Nette Framework class reflection extension for PHPStan & framework-specific rules
This extension provides following features:
Nette\ComponentModel\Container::getComponent()
knows type of the component because it reads the return type on createComponent*
(this works best in presenters and controls)Nette\DI\Container::getByType
and createInstance
return type based on first parameter (Foo::class
).Nette\Forms\Container::getValues
return type based on $asArray
parameter.Nette\ComponentModel\Component::lookup
return type based on $throw
parameter.Nette\Application\UI\Component::getPresenter
return type based on $throw
parameter.on*
propertiesUndefined variable
errorsIt also contains these framework-specific rules (can be enabled separately):
AbortException
)To use this extension, require it in Composer:
composer require --dev phpstan/phpstan-nette
If you also install phpstan/extension-installer then you're all set!
If you don't want to use phpstan/extension-installer
, include extension.neon in your project's PHPStan config:
includes:
- vendor/phpstan/phpstan-nette/extension.neon
To perform framework-specific checks, include also this file:
- vendor/phpstan/phpstan-nette/rules.neon