【问题标题】:IntelliJ Structural Search in PhpStorm to find methods with specific return typesPhpStorm 中的 IntelliJ 结构搜索以查找具有特定返回类型的方法
【发布时间】:2017-09-30 19:10:08
【问题描述】:

如何在我的示例中使用 PhpStorm 的结构搜索找到返回类型为 boolean 的方法 foo

<?php

class test {

    public function hello() {
        return true;
    }

    /**
     * @return bool
     */
    public function foo(): boolean {
        return true;
    }

}

$t = new test();
$t->foo();

我尝试了以下搜索模板

class $a$ {
 public function $show$(): boolean {
  $content$
 }
}

在哪里可以了解有关这些代码/搜索模板的更多信息?

【问题讨论】:

  • 您提供的是 PHP 代码,但您谈论的是 intellij(没有 s),这是针对 Java 的。如果您想为 PHP 提供一些东西,请使用 PhpStorm。在那里,您将自动完成 PHP jetbrains.com/phpstorm/features。我不认为你可以在 intellij-idea 中做 PHP 的事情
  • 对不起,我不是那个意思。我已经调整了我的问题。

标签: php intellij-idea phpstorm php-7 structural-search


【解决方案1】:

我最近就 PhpStorm 中的结构搜索实现与 JetBrains 支持人员取得了联系。问题是它只是部分实施。诸如返回类型、继承和其他使结构搜索有用的东西目前不可用(选项在那里,但显示为灰色并且它们不起作用)。

这使得结构搜索的用例数量极为有限,您通常最好使用不同类型的搜索。

有一张关于此的公开票:https://youtrack.jetbrains.com/issue/IDEA-174921


对于您的用例(查找具有布尔返回类型的函数),我建议您进行正则表达式搜索:

  • 转到编辑 -> 查找 -> 在路径中查找
  • 确保 Regex 被选中并且 Match case 未被选中。
  • 输入以下正则表达式:function[^}]+:\s*bool

【讨论】:

    【解决方案2】:

    你可以这样做:

    class $class_name$ {public function $function_name$(): bool}
    

    只需在您拥有的搜索模板中使用 bool 而不是 boolean

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-24
      • 1970-01-01
      • 1970-01-01
      • 2017-08-23
      • 2011-09-09
      相关资源
      最近更新 更多