1、__get/__set:对对象属性的接管
2、__call/__callStatic:控制php对象方法的使用
3、__toString:将php对象转换成字符串
4、__invoke:将一个php对象当成函数来执行时来回调这个方法
<code>class Object { protected $array = array(); function __set($key,$value) { var_dump(__METHOD__); $this->array[$key] = $value; } function __get($key) { var_dump(__METHOD__); return $this->array[$key]; } function __call($func,$param) { var_dump($func,$param); return magic mathod __call; } static function __callStatic($func,$param) { var_dump($func,$param); return magic mathod __callStatic; } function __toString() { return __toString; } function __invoke($param) { var_dump($param); return invoke; } } </code>
$Obj = new Object();
$Obj->title = “你好”;//当对一个对象不存在的属性赋值的时候,它就会自动调用__set方法
echo $Obj->title;//对去读取一个对象不存在的属性的时候,它就会自动调用__get方法
echo $Obj->test(“hello”,”123”); //当调用一个对象不存在的方法时,就会自动调用__call方法
echo $Obj::test1(“hello1”,”1234”); //当调用一个对象不存在的静态方法时,就会自动调用__callStatic方法
echo $Obj;//当直接输出一个对象时(因为对象不能直接输出),就会自动调用__toString方法把对象转换成字符串
echo $Obj(“hello”);//当将一个对象当成一个函数来使用的时候,就会自动调用__invoke方法
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章
Windows 11 KB5054979中的新功能以及如何解決更新問題
1 個月前ByDDD
如何修復KB5055523無法在Windows 11中安裝?
3 週前ByDDD
如何修復KB5055518無法在Windows 10中安裝?
3 週前ByDDD
R.E.P.O.的每個敵人和怪物的力量水平
3 週前By尊渡假赌尊渡假赌尊渡假赌
藍王子:如何到達地下室
3 週前ByDDD

熱工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Dreamweaver CS6
視覺化網頁開發工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

SublimeText3漢化版
中文版,非常好用

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。