【问题标题】:IntelliJ Structural Search in PhpStorm to find specific function used within foreach blockPhpStorm 中的 IntelliJ 结构搜索以查找在 foreach 块中使用的特定函数
【发布时间】:2020-07-10 09:39:35
【问题描述】:
我需要在其中使用current() 函数的任何地方找到所有foreach 块。下面是示例代码块,应该可以找到。
$x=12;
foreach ($array as &$val)
{
$cur=current($array);
$x=$x+$cur;
echo $cur;
}
【问题讨论】:
标签:
php
intellij-idea
phpstorm
php-7
structural-search
【解决方案1】:
你可以试试这个:
foreach ($statement$) {
$st1$
$var$ = current($arr$);
$st2$
}
测试代码:
<?php
$x=12;
foreach ($array as &$val)
{
$cur=current($array);
$x=$x+$cur;
echo $cur;
}
foreach ($array as &$val)
{
$cur=current($array);
}
foreach ($array as &$val) {
$x=$x+$cur;
$cur = current($array);
}
foreach ($array as &$val) {
$x=$x+$cur;
echo $cur;
echo $cur;
$cur = current($array);
}
foreach ($array as &$val) {
$x=$x+$cur;
echo $cur;
echo $cur;
}
结果:
注意事项:
-
您可以将 Search target 从“完全匹配”更改为某个特定的占位符/变量,它将仅突出显示该位置而不是整个 foreach 块...
-
该规则将找不到在没有分配或以某种不同方式使用current() 的地方(它必须是$someVar = current($someArray);)。
您可以为此创建一个单独的规则(我现在不确定如何将它们合并在一起),例如
foreach ($statement$) {
$st1$
current($arr$);
$st2$
}