首頁 >後端開發 >php教程 >PHP物件鍊式操作實作原理分析

PHP物件鍊式操作實作原理分析

高洛峰
高洛峰原創
2016-12-20 16:07:051146瀏覽

本文實例講述了PHP物件鍊式操作實現原理。分享給大家供大家參考,具體如下:

什麼是鍊式操作呢?使用jQuery的同學印象應該會很深刻.在jQuery中,我們經常會這樣的來操作DOM元素:

$("p").css("color").addClass("selected");

  

連貫操作看起來的確很酷,也非常的方便代碼的閱讀.那麼在PHP裡面是否可以實現呢?答案是肯定的,當然了必須是在OOP中用才行,在過程化的程序中,就沒有必要用這種方法了。

在PHP中,我們常常要使用很多函數:

$str = 'abs123 ';
echo strlen(trim($str));

   

🎜上面程式碼的作用就是去除字串兩邊的空格,然後輸出其長度,那麼使用鍊式程式設計就可以這樣來:🎜reee 🎜🎜🎜🎜是不是看著更加的舒服呢?這裡主要是利用了PHP面向對象裡面的__call() 和__toString() 魔術方法🎜
$str = 'abs123 ';
echo $str->trim()->strlen();
🎜   🎜🎜🎜🎜從以上代碼可以看出當以上代碼可以看出當。物件中不存在的方法時,會自動觸發__call()魔術方法,然後結合call_user_func()來執行鍊式操作,當輸出對象的時候觸發toString()來輸出想要的結果.當然還有一個方案就是在自訂的方法中使用return this,也可以實現物件鍊式的操作,大家可以自己去試試看.🎜🎜希望本文所述對大家PHP程式設計有所幫助。 🎜🎜更多PHP物件鍊式操作實現原理分析相關文章請關注PHP中文網! 🎜
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn