PHP基礎(chǔ)之類和對象2——類的屬性
類的變量成員叫做“屬性”,或者叫“字段”、“特征”,在本文檔統(tǒng)一稱為“屬性”。屬性聲明是由關(guān)鍵字?public,protected?或者?private?開頭,然后跟一個普通的變量聲明來組成。屬性中的變量可以初始化,但是初始化的值必須是常數(shù),這里的常數(shù)是指 PHP 腳本在編譯階段時就可以得到其值,而不依賴于運行時的信息才能求值。
Note:
為了向后兼容 PHP 4,PHP 5 聲明屬性依然可以直接使用關(guān)鍵字?var?來替代(或者附加于)public,protected?或?private。但是已不再需要?var?了。在 PHP 5.0 到 5.1.3,var?會被認為是廢棄的,而且拋出?E_STRICT?警告,但是 5.1.3 之后就不再認為是廢棄,也不會拋出警告。
如果直接使用?var?聲明屬性,而沒有用?public,protected?或?private?之一,PHP 5 會將其視為?public。
在類的成員方法里面,可以用?->(對象運算符):$this->property(其中?property?是該屬性名)這種方式來訪問非靜態(tài)屬性。靜態(tài)屬性則是用?::(雙冒號):self::$property 來訪問。
Example #1 屬性聲明
class SimpleClass
{
//錯誤的屬性聲明
public $var1 = ’hello ’.’world’;
public $var2 = <<<EOD
hello world
EOD;
public $var3 = 1+2;
public $var4 = self::myStaticMethod();
public $var5 = $myVar;
//正確的屬性聲明
public $var6 = myConstant;
public $var7 = array(true,false);
//PHP5.3.0及以后,下面的聲明也正確
public $var8 = <<<’EOD’
hello world
EOD;
}
跟?heredocs?不同,nowdocs?可在任何靜態(tài)數(shù)據(jù)上下文中使用,包括屬性聲明。
Example #2 示例:使用 nowdoc 初始化屬性
//PHP5.3.0起
public $var = <<<’EOD’
hello world
EOD;
Note:
Nowdoc 支持是在 PHP 5.3.0 新增的。
相關(guān)文章:
1. 用xslt+css讓RSS顯示的跟網(wǎng)頁一樣漂亮2. ASP.NET MVC把數(shù)據(jù)庫中枚舉項的數(shù)字轉(zhuǎn)換成文字3. 《CSS3實戰(zhàn)》筆記--漸變設(shè)計(一)4. Ajax實現(xiàn)異步加載數(shù)據(jù)5. 測試模式 - XSL教程 - 56. ASP.NET Core自定義中間件的方式詳解7. html5手機觸屏touch事件介紹8. CSS3實現(xiàn)動態(tài)翻牌效果 仿百度貼吧3D翻牌一次動畫特效9. 讓chatgpt將html中的圖片轉(zhuǎn)為base64方法示例10. 教你JS更簡單的獲取表單中數(shù)據(jù)(formdata)
