object扩展一个对象,构造函数是如何工作的


PHP: object extends an object, how does constructor work?

我有一个类User。然后在Profile中扩展User,并添加一些额外的信息。

Profile的构造函数是这样的:

function __construct($user_id) {
  // This function sets all of User's attributes
  $this->set_user_data($user_id); 
  // This function sets the extra attribute for Profile.
  $this->set_follow_status(); 
}

第二个函数使用第一个函数中的属性集$this->user_id。我从第二个函数中得到这个错误:Fatal error: Using $this when not in object context .

我是不是忘了在PHP中扩展对象?

是否将set_follow_status方法声明为静态?静态方法在类的范围内执行,而不是在对象的范围内执行,因此不能访问任何特定的实例($this不在方法内部设置)。