php-standard-library / psalm-plugin
PHP Standard Library 的 Psalm 插件
2.3.0
2023-11-28 12:22 UTC
Requires
- php: ^8.1
- vimeo/psalm: >=5.16
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.18
- roave/security-advisories: dev-master
- squizlabs/php_codesniffer: ^3.5
Conflicts
- azjezz/psl: <2.0
README
安装
支持的安装方式是通过 composer
composer require php-standard-library/psalm-plugin --dev
使用方法
要启用插件,请使用 psalm-plugin
二进制文件将 Psl\Psalm\Plugin
类添加到您的 Psalm 配置中,如下所示
php vendor/bin/psalm-plugin enable php-standard-library/psalm-plugin
类型改进
给定以下示例
use Psl\Type; $specification = Type\shape([ 'name' => Type\string(), 'age' => Type\int(), 'location' => Type\optional(Type\shape([ 'city' => Type\string(), 'state' => Type\string(), 'country' => Type\string(), ])) ]); $input = $specification->coerce($_GET['user']); /** @psalm-trace $input */
Psalm 假设 $input
的类型为 array<"age"|"location"|"name", array<"city"|"country"|"state", string>|int|string>
。
如果我们启用 php-standard-library/psalm-plugin
插件,您将获得更具体和正确的类型 array{name: string, age: int, location?: array{city: string, state: string, country: string}}
。
兼容性
赞助商
感谢我们的赞助商和支持者
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 LICENSE