本文目錄一覽:
- 1、PHP中魔術變數__METHOD__與__FUNCTION__的區別
- 2、php魔術方法。。
- 3、php5中魔術方法函數有哪幾個,請舉例說明各自的用法
- 4、PHP魔術變數是什麼求詳解,不要去複製然後來粘貼
PHP中魔術變數__METHOD__與__FUNCTION__的區別
本文實例講述了PHP中魔術變數__METHOD__與__FUNCTION__的區別,分享給大家供大家參考。具體分析如下:
__METHOD__類的方法名(PHP
5.0.0
新加)。返回該方法被定義時的名字(區分大小寫)。
__FUNCTION__函數名稱(PHP
4.3.0
新加)。自
PHP
5
起本常量返回該函數被定義時的名字(區分大小寫)。在
PHP
4
中該值總是小寫字母的。
文檔解釋都是說返回函數(方法)的名字。區別在於:
__FUNCTION__只是返回方法的名字;
__METHOD__返回類的名字和方法的名字。
?php
class
Test{
public
function
doit(){
echo
__FUNCTION__;
}
public
function
doitAgain(){
echo
__METHOD__;
}
}
$obj
=
new
Test();
$obj-doit();
echo
‘br’;
$obj-doitAgain();
?
輸出結果為:
doit
Test::doitAgain
希望本文所述對大家的PHP程序設計有所幫助。
php魔術方法。。
在 PHP 里,將所有以 __(兩個下劃線)開頭的類方法保留為魔術方法,所以在定義類方法時,除了上述魔術方法,建議不要以 __ 為前綴。
魔術方法的引入是對面向對象編程思想的進一步實現,重載就是通過魔術方法來實現的。
PHP 魔術方法主要有:
__construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(), __unset(),__sleep(), __wakeup(), __toString(), __invoke(), __set_state(), __clone() 和 __debugInfo() 等。
最常見的是__construct(), __destruct(),__get(), __set()等:
__construct和__destruct是類的構造函數和析構函數。
php5中魔術方法函數有哪幾個,請舉例說明各自的用法
__construct() :實例化對象時被調用;
__destuct():當刪除一個對象或者對象操作終止是被執行;
__call():調用對象不存在方法時被調用;
__get():調用對象不存在的屬性時被調用;
__set():設置對象不存在的屬性時被調用;_
_toString():列印一個對象時被調用,比如echo $obj,print($obj);
__clone():克隆對象時被調用,比如$t = new Test();$tt = clone $t;
__sleep():serialize之前被調用,若對象比較大,想做一些刪除在序列化,可以考慮使用該方法;
__wakeup():unserialize之前被調用,做些對象的初始化;
__isset():檢測對象是否存在屬性的時候被調用,如 isset($c-name);
__unset():unset一個對象屬性時被調用,如:unset($c-name);
__set_state():調用var_export時被調用,用__set_state的返回值作為 var_export的返回值;,
__autoload():實例化一個對象時,如果對應的類不存在,在該方法被調用。
希望你能採納,謝謝。
PHP魔術變數是什麼求詳解,不要去複製然後來粘貼
魔術變數就是指那些根據不同環境有不同的取值
比如
__FILE__
就是一個典型的魔術變數,當它出現在a.php文件里時它的值就是a.php的具體路徑,出現在b.php文件里就是b.php的具體路徑
其他的一些魔術變數還有__FUNCTION__, __CLASS__
總之這些變數的值往往不是固定的,變來變去的,很神奇,像魔術一樣,故叫做魔術變數
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/285957.html