在遗留项目中,当我尝试在phpstorm中找到方法的使用而没有成功时,我感到很困惑。
/**
* @param SomeEntity[] $someEntity
*
* @return bool
*/
protected function warmupSomeEntity(array $brandUniverses)
{
// I want to find this method's usage
}
进一步调试,我发现通过动态类方法调用以相当抽象的方式动态调用该方法:
/**
* @param string $warmer
* @param array $objects
*
* @throws RuntimeException
*/
public function warmupType($warmer, array $objects)
{
$method = "warmup$warmer";
if (method_exists($this, $
$this->{$method}($objects);
} else {
throw new RuntimeException("There is no warmer '$warmer'");
}
}
是否有phpdoc语法,我可以记录warmUpType
方法将调用warmupSomeEntity
或warmupSomeOtherEntity
,以便我可以再次查找其用法,如果我想跳转到调用代码块再次?
答案 0 :(得分:1)
@uses keyword正是我所寻找的:
显示元素文档的链接,并在另一个元素的文档中创建一个反向链接
PhpStorm支持它,再次找到来电者。
/**
* @param string $warmer
* @param array $objects
* @uses warmupSomeEntity
* @uses warmupSomeOtherEntity
* @throws RuntimeException
*/
public function warmupType($warmer, array $objects)
{
...
}