天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

php魔術方法與魔術變量、內置方法與內置變量的深入分析

php內置變量了:DIRECTORY_SEPARATOR
DIRECTORY_SEPARATOR是一個返回跟操作系統相關的路徑分隔符的php內置命令,在windows上返回/,而在linux或者類unix上反悔/,就是這么個區別,通常在定義包含文件路徑或者上傳保存目錄的時候會用到。
php 把所有以 __ (兩個下劃線)開頭的類方法當成魔術方法。所以你定義自己的類方法時,不要以   __ 為前綴。

1 、 __construct()
當實例化一個對象的時候,這個對象的構造方法將首先被調用;
我們知道 php5 對象模型和類名相同的函數是類的構造函數,那么如果同時定義構造函數和 __construc() 方法的話, php5 會默認調用 __contruct() 而不會調用同類名函數,所以 __contruct() 作為類的默認構造函數;

2 、 __destruct()
析構函數會在到某個對象的所有引用都被刪除或者當對象被顯式銷毀時執行。

3 、 __get(string $name)
當試圖讀取一個并不存在的屬性時被調用;如果試圖讀取一個對象并不存在的屬性的時候, php 就會給出錯誤的信息。如果在類里添加 __get 方法,并且我們可以用這個函數實現類似 Java 中的反射的各種操作。

4 、 __set(string $name, mixed $value)
給未定義的變量賦值時將被調用

5 、 __call(string $name, array $arguments)
當調用一個不可訪問方法(如未定義,或者不可見)時, __call()   會被調用。
__callStatic( string $name, array $arguments )
當在靜態方法中調用一個不可訪問方法(如未定義,或者不可見)時, __callStatic()   會被調用。

6 、 __toString()
當打印一個對象的時候被調用,這個方法類似于 Java 的 toString 方法,當我們直接打印對象的時候回調這個函數。

7 、 __clone()
當對象被克隆時調用。

8 、 __sleep()
serialize() 函數會檢查是否存在一個魔術方法   __sleep . 如果存在, __sleep() 方法會先被調用,   然后才執行序列化操作。這個功能可以用于清理對象,并返回一個包含對象中所有變量名稱的數組。如果該方法不返回任何內容,則 NULL 被序列化,導致   一個 E_NOTICE 錯誤。 __sleep 方法常用于提交未提交的數據,或類似的操作。同時,如果你有一些很大的對象,不需要保存,這個功能就很好用。

9 、 __wakeup()
與 __sleep()  相反, unserialize() 會檢查是否存在一個 __wakeup 方法。如果存在,則會先調用   __wakeup 方法,預先準備對象數據。   __wakeup 經常用在反序列化操作中,例如重新建立數據庫連接,或執行其它初始化操作。

10 、 __isset()
當對未定義的變量調用 isset()   或   empty() 時, __isset()   會被調用。

11 、 __unset()
unset 一個對象的屬性時被調用。如: unset($c->name) 。

12 、 __set_state()
調用 var_export 時,被調用。用 __set_state 的返回值做為 var_export 的返回值。

13 、 __autoload()
實例化一個對象時,如果對應的類不存在,則該方法被調用。簡單的說就是類的自動加載 ; 當你嘗試使用一個 php 沒有組織到的類 ,  它會尋找一個 __autoload 的全局函數 .  如果存在這個函數 ,php 會用一個參數來調用它 , 參數即類的名稱。

14 、 __invoke()
當嘗試以調用函數的方式調用一個對象時, __invoke   方法會被自動調用。

魔術常量 :
__LINE__  文件中的當前行號。 
__FILE__  文件的完整路徑和文件名。如果用在被包含文件中,則返回被包含的文件名。自   php 4.0.2  起, __FILE__  總是包含一個絕對路徑(如果是符號連接,則是解析后的絕對路徑),而在此之前的版本有時會包含一個相對路徑。 
__DIR__  文件所在的目錄。如果用在被包括文件中,則返回被包括的文件所在的目錄。它等價于   dirname(__FILE__) 。除非是根目錄,否則目錄中名不包括末尾的斜杠。( php 5.3.0 中新增)   =
__FUNCTION__  函數名稱( php 4.3.0  新加)。自   php 5  起本常量返回該函數被定義時的名字(區分大小寫)。在   php 4 中該值總是小寫字母的。 
__CLASS__  類的名稱( php 4.3.0  新加)。自   php 5  起本常量返回該類被定義時的名字(區分大小寫)。在   php 4  中該值總是小寫字母的。 
__METHOD__  類的方法名( php 5.0.0  新加)。返回該方法被定義時的名字(區分大小寫)。 
__NAMESPACE__  當前命名空間的名稱(大小寫敏感)。這個常量是在編譯時定義的( php 5.3.0  新增)

php技術php魔術方法與魔術變量、內置方法與內置變量的深入分析,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 2020年国产精品午夜福利在线观看 | 打卡中国各地奋斗第一线 | 在线精品视频免费观看 | 一区二区三区毛AAAA片特级 | 花蝴蝶hd免费 | xxx日本高清视频hd | 韩国伦理电影在线神马网 | 消息称老熟妇乱视频一区二区 | 美女医生深夜在家裸睡惨死 | 波野结衣qvod | 久久精品综合网中文字幕 | 最近免费中文字幕完整版HD | 性欧美13处14处破 | 国产免费内射又粗又爽密桃视频 | 国产欧美日韩亚洲第一页 | 解开白丝老师的短裙猛烈进入 | 美女脱衣服搞鸡 | 色戒在线完整观看在线播放版 | 免费看男人J放进女人J无遮掩 | 一边啪啪的一边呻吟声口述 | 国产精品一区二区四区 | 男人狂躁进女人免费视频公交 | 日日噜噜大屁股熟妇 | 用快播看av的网站 | 麻豆啊传媒app黄版破解免费 | 国产熟妇无码一区二 | hdsex老太婆70| 国产精品欧美一区二区在线看 | 国产午夜AV无码无片久久96 | 亚洲AV成人片色在线观看网站 | 老女人与小伙子露脸对白 | JEALOUSVUE成熟老师APP | 妻子+免费观看完整 | 5g天天影院天天看天天爽 | write as 跳蛋| 99久久精品免费看国产一区二区三区 | 国产精品久久久亚洲偷窥女厕 | 丰满女朋友在线观看中文 | silk118中文字幕无删减 | 母乳女神春日もな | 少妇连续高潮抽搐痉挛昏厥 |