它看起来像是扫描未初始化属性值的能力
was added in July of 2020
checkUninitializedProperties
% cat phpstan.neon
parameters:
checkUninitializedProperties: true
and then tell `phpstan` to use this configuration file.
% ./vendor/bin/phpstan analyse --level=8 --configuration=./phpstan.neon /tmp/test.php
1/1 [ââââââââââââââââââââââââââââ] 100%
------ ------------------------------------------------------------------------------------------------------
Line /tmp/test.php
------ ------------------------------------------------------------------------------------------------------
6 Class Zip has an uninitialized property $zap. Give it default value or assign it in the constructor.
------ ------------------------------------------------------------------------------------------------------
[ERROR] Found 1 error
此外,冒着大声说出明显部分的风险,此检查采用特定的编程风格。例如,以下有效的PHP程序
<?php
class Zap {
}
class Zip {
public Zap $zap;
}
$object = new Zip;
$object->zap = new Zap;
var_dump(
$object->zap
);
仍然失败