Phpstorm 显示动态生成的可调用函数名的用法
PhpStorm中是否有可能在声明和使用之间映射动态生成功能的使用 假设我有下一个代码:Phpstorm 显示动态生成的可调用函数名的用法,phpstorm,phpdoc,Phpstorm,Phpdoc,PhpStorm中是否有可能在声明和使用之间映射动态生成功能的使用 假设我有下一个代码: <?php class TestExample { public function __construct($component) { $component_parts = $this->get_dynamic_component_part_list($component); $this->load_component_parts($compon
<?php
class TestExample {
public function __construct($component) {
$component_parts = $this->get_dynamic_component_part_list($component);
$this->load_component_parts($component, $component_parts);
}
private function get_dynamic_component_part_list($component){
//Complex logic to get attached parts by $component
$component_parts = array('part1', 'part2');
return $component_parts;
}
private function load_component_parts(&$component, $component_parts) {
foreach ($component_parts as $component_part) {
$component[$component_part] = $this->{'load_' . $component_part}($component['id']);
}
}
private function load_part1($id) {
//Loading and prepare condition from one source
$part1 = new Part1($id);
// Complex algorithm
return $part1;
}
private function load_part2($id) {
//Loading and prepare condition from another source
$part2 = new Part2($id);
// Complex algorithm
return $part2;
}
}
class Part1 {
}
class Part2 {
}
我不知道有什么办法——您正在运行时动态组装方法名——无法使用静态分析对其进行检测/评估。如果你不想看到这样的警告,就让他们受到保护。。。或者禁止禁用/检查该文件的检查。这是否可能是将来开发人员添加该功能的原因?例如,像add phpDoc/**@可能的\u方法$this->load\u part1*/
或者像/**@可能的\u组件['part1','part2']@可能的\u方法$this->load\u$component$*/
这样的代码更好。除了当前的项目之外,我在OpenCart
中遇到了这种类型的方法调用,举例来说,以这种方式显示方法调用的用法是有用的,我个人对此表示怀疑——几乎没有什么实际的好处。在任何情况下,您都知道问题跟踪器在哪里,您可以在那里留下功能请求票证。@LazyOne Ok。我会做一会儿。谢谢你的谈话@LazyOne请看,我不知道怎么办——您在运行时动态地组装方法名——它无法使用静态分析进行检测/评估。如果你不想看到这样的警告,就让他们受到保护。。。或者禁止禁用/检查该文件的检查。这是否可能是将来开发人员添加该功能的原因?例如,像add phpDoc/**@可能的\u方法$this->load\u part1*/
或者像/**@可能的\u组件['part1','part2']@可能的\u方法$this->load\u$component$*/
这样的代码更好。除了当前的项目之外,我在OpenCart
中遇到了这种类型的方法调用,举例来说,以这种方式显示方法调用的用法是有用的,我个人对此表示怀疑——几乎没有什么实际的好处。在任何情况下,您都知道问题跟踪器在哪里,您可以在那里留下功能请求票证。@LazyOne Ok。我会做一会儿。谢谢你的谈话@懒汉,请看