PHP 中的动态类属性定义
由于语言的限制,在 PHP 中不可能在同一类中动态分配属性值编译过程。您遇到的错误源于尝试在其自己的定义中引用对象属性,这是不允许的。
构造函数方法
要解决此问题,类属性依赖于其他属性可以在构造函数方法内初始化。例如,在您的示例中:
public function __construct() { $this->fullname = $this->firstname . ' ' . $this->lastname; $this->totalBal = $this->balance + $this->newCredit; }
此方法可确保在创建对象并初始化其所有属性后计算和分配动态属性。
为什么默认赋值是静态的
根据 PHP 手册,类属性的默认赋值必须是可以在编译时评估的常量值 时间。此限制阻止在属性定义中使用运行时信息或动态值。
以上是如何在 PHP 中定义动态类属性?的详细内容。更多信息请关注PHP中文网其他相关文章!