[英]Error defining variable in PHP object
我在以下代碼中收到以下錯誤:
Class primeField implements field {
private $intmodulus = '';
public function generator(){
return ;
}
public function modulus(){
return $this->$intmodulus;
}
public function __construct($modulus , $base=0) {
if (is_resource($modulus) && get_resource_type($modulus) == "GMP integer"){
$this->$intmodulus = $modulus;
} else{
$this->$intmodulus = gmp_init($modulus , $base); \\line 70
}
}
}
$a = new primeField(11);
$a->modulus();
注意:未定義的變量:第70行的/ Users / admin / PHP ECC / finitefield.php中的intmodulus致命錯誤:無法訪問第70行的/ Users / admin / PHP ECC / finitefield.php中的空屬性
為什么
語法是
$this->intmodulus
不是$this->$intmodulus
。
您收到錯誤消息“無法訪問空屬性”,因為$intmodulus
未定義,因此訪問它會產生NULL
。 當您嘗試將NULL用作屬性名稱時,NULL將轉換為空字符串。
如果$intmodulus
的值是有效屬性的名稱(例如,如果$intmodulus == "intmodulus"
),則您將使用該名稱訪問該屬性。
$this->$intmodulus
應該是$this->intmodulus
有關正在發生的事情的信息,請參閱變量變量的PHP文檔 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.