use*_*ess 1 php visual-studio-code phpstan psalm-php
有没有一种方法可以指定函数将返回特定类型的对象,其中类型是参数之一的字符串?
例如
/**
* @return object<$class>
*/
public function create(string $class): object {
... some factory stuff
}
Run Code Online (Sandbox Code Playgroud)
这样 vscode 或 phpstorm 就会知道当我这样做时
$myvar = X::create('MyClass');
Run Code Online (Sandbox Code Playgroud)
$myvar 将是 MyClass 类型,我将拥有适当的智能感知/自动完成功能?
这可以使用如下模板来实现:
/**
* @template T of object
* @psalm-param class-string<T> $a
* @param class-string<T> $a
* @return T
*/
function foo($a)
{
return $a;
}
Run Code Online (Sandbox Code Playgroud)
但我不知道 VSCode 是否已经支持了。例如 PhpStorm 不知道如何正确处理返回值
| 归档时间: |
|
| 查看次数: |
1706 次 |
| 最近记录: |