首页 > 解决方案 > PHP 类型化属性批量声明不能将 null 分配给可为空的字段

问题描述

我在违反直觉的错误/属性上有盖章。

class xxx{
    public ?int $a, $b;

    public function __construct($a, $b){
        $this->a = $a;
        $this->b = $b;
    }
}

new xxx(null, 10); //Working
new xxx(10, null); //Not working

有人可以向我解释为什么第二行不起作用。

PHP 版本 7.4.2。

标签: phpphp-7.4

解决方案


正如@NikiC 在评论部分指出的那样:这是一个在 7.4.3 中修复的已知问题。


推荐阅读