1
我正試圖圍繞PHP中的static關鍵字進行打包。在這裏我寫了一小段代碼,其中我的person1
實例可以調用稱爲sayRealname()
的靜態方法。但是當我嘗試調用一個公共靜態變量時,它會給出一個錯誤。這是什麼原因?實例對象可以調用靜態方法,但不是靜態變量
class Human{
public static $age=34;
public static $name='humpty dumpty';
protected static $realname='al';
public static function sayRealname(){
echo self::$age;
}
}
$person1=new Human();
echo $person1->name; // error
$person1->sayRealname(); // prints 34
爲什麼名稱是靜態的? – mkaatman
它可以是任何..我叫它的名字.. –
僅供參考,如果你只是想讓它工作...'echo $ person1 :: $ name;' –