slam / phpstan-laminas-framework
Laminas 框架 3 MVC 控制器插件扩展用于 PHPStan。
v1.6.0
2024-08-19 09:56 UTC
Requires
- php: ~8.2.0 || ~8.3.0
- phpstan/phpstan: ^1.11.10
Requires (Dev)
- laminas/laminas-cache: ^3.12.2
- laminas/laminas-cache-storage-adapter-memory: ^2.3.0
- laminas/laminas-filter: ^2.37.0
- laminas/laminas-form: ^3.20.0
- laminas/laminas-hydrator: ^4.15.0
- laminas/laminas-i18n: ^2.28.0
- laminas/laminas-inputfilter: ^2.30.1
- laminas/laminas-mail: ^2.25.1
- laminas/laminas-mvc: ^3.7.0
- laminas/laminas-paginator: ^2.18.1
- laminas/laminas-validator: ^2.64.1
- phpstan/phpstan-deprecation-rules: ^1.2.0
- phpstan/phpstan-phpunit: ^1.4.0
- phpunit/phpunit: ^9.6.20
- slam/php-cs-fixer-extensions: ^3.11.1
Conflicts
- laminas/laminas-cache: <3.12
- laminas/laminas-filter: <2.37
- laminas/laminas-form: <3.20
- laminas/laminas-hydrator: <4.15
- laminas/laminas-i18n: <2.28
- laminas/laminas-inputfilter: <2.30
- laminas/laminas-log: <2.16
- laminas/laminas-mail: <2.25
- laminas/laminas-mvc: <3.7
- laminas/laminas-paginator: <2.18
- laminas/laminas-validator: <2.64
This package is auto-updated.
Last update: 2024-09-19 16:17:49 UTC
README
此扩展提供以下功能
- 为类型为
\Laminas\ServiceManager\ServiceLocatorInterface
、\Interop\Container\ContainerInterface
或\Psr\Container\ContainerInterface
的容器中$container->get()
调用提供正确的返回类型 - 处理使用魔术方法
__call()
在\Laminas\Mvc\Controller\AbstractController
的子类中调用的控制器插件 - 为
AbstractController
、FilterChain
、PhpRenderer
和ValidatorChain
的plugin
方法提供正确的返回类型 - 控制器、MvcEvents、View、ViewEvent 和 Application 上的
getApplication()
、getRenderer()
、getRequest()
和getResponse()
方法返回实际实例而不是类型提示接口 \Laminas\View\Helper\AbstractHelper
上的getView()
方法返回实际的 Renderer 实例而不是类型提示接口\Laminas\Stdlib\ArrayObject
被配置为 通用对象仓库- 处理
\Laminas\Stdlib\AbstractOptions
的魔术属性
安装
要使用此扩展,请在 Composer 中引入它
composer require --dev slam/phpstan-laminas-framework
如果您还安装了 phpstan/extension-installer,则一切准备就绪!
手动安装
如果您不想使用 phpstan/extension-installer
,请将 extension.neon 包含在您的项目 PHPStan 配置中
includes:
- vendor/slam/phpstan-laminas-framework/extension.neon
配置
此库已经识别了内置服务和插件。
您可以通过提供您自己的应用程序中的服务管理器来选择更高级的分析
parameters: laminasframework: serviceManagerLoader: tests/service-manager.php
例如,tests/service-manager.php
可能看起来像这样
$app = \Laminas\Mvc\Application::init($config); return $app->getServiceManager();