带有__call魔术方法的RESTful反射类-IDE自动完成

时间:2018-10-06 12:49:28

标签: php rest design-patterns api-design

我正在使用基于我浏览过的其他一些软件包的结构来构建用于外部服务的基本API软件包;

MyPacakge.php

public function __construct($key)
{
    $this->key = $key
}

protected function getApiInstance($method)
{
    $class = "\\My\\MyPackage\\Api\\".ucwords($method);
    if (class_exists($class) && ! (new \ReflectionClass($class))->isAbstract()) {
        return new $class($this->key);
    }
    throw new \BadMethodCallException("Undefined method [{$method}] called.");
}

public function __call($method, array $parameters)
{
    return $this->getApiInstance($method);
}

Index.php

$myPackage = new MyPackage;
$myPackage->Class()->method();

在使用ReflectionClass函数时,有什么方法可以让我的IDE(phpstorm)识别类及其方法吗?

0 个答案:

没有答案