PhpStorm 2021.3 Help

使静态

Make Method Static重构将实例方法转换为静态方法,并自动更正该方法的所有调用、实现和覆盖。

  1. 在结构视图中选择要重构的方法,或在编辑器中右键单击方法名称。从主菜单或选择的上下文菜单中,选择Refactor | 制作静态。如果您的方法不需要任何参数,也不依赖访问此对象的属性或方法,您将获得静态方法,不显示任何对话框:

    类 MyClass { 私有函数 getFormattedDate() { $format = getSettings()['dateFormat']; 返回时间($格式);} }
    类 MyClass { 静态私有函数 getFormattedDate() { $format = getSettings()['dateFormat']; 返回时间($格式);} }

    对于更复杂的情况,将打开Make Method Static对话框。

  2. Make Method Static对话框中,执行以下操作之一:

    • 如果您当前通过 使用现有对象$this,请选中Add object as a parameter with name复选框以通过参数传入对象的实例。在下面的字段中,指定要生成的参数的名称。重构后,新参数将记录在PHPDoc块中。

      类 MyClass { 私有函数 getFormattedDate() { $format = $this->getSettings()['dateFormat']; 返回时间($格式);} }
      class MyClass { /** * @param MyClass $instance * @return */ 静态私有函数 getFormattedDate($instance) { $format = $instance->getSettings()['dateFormat']; 返回时间($格式);} }
    • 如果访问类的属性,请使用为属性添加参数区域将属性的值作为参数传递,而不是访问新创建的静态方法内的对象。

      1. 选中为属性添加参数复选框。

      2. 在显示所有可能建议的参数的参数列表中,选中要传入值的参数旁边的复选框。

      类 MyClass { 私有函数 getFormattedDate() { $format = $this->timeFormat; 返回时间($格式);} }
      class MyClass { /** * @param $timeFormat * @return int; */ 静态私有函数 getFormattedDate($timeFormat) { $format = timeFormat; 返回时间($格式);} }
  3. 要预览结果,请单击预览并在查找工具窗口中检查重构的结果。如果没有出现问题,请应用更改。

最后修改时间:2021 年 4 月 2 日