將乙個物件當做乙個字串來使用時,會自動呼叫該方法,並且在該方法中,可以返回一定的字串,以表明該物件轉換為字串之後的結果。該魔術方法比較常用。
注意:如果沒有定義該方法,則物件無法當做字串來使用!
<?php
ini_set('display_errors', 1);
classa}
$obj1 = new a('張三', 15, '男');
echo
$obj1; //echo 後面為字串,而物件不是字串,會報錯
$v1 = "abc" . $obj1; //.為字串連線符,會報錯
$v2 = "abx" + $obj1; //+為加法運算子,會報錯
?>
3個報錯內容分別為
catchable fatal error: object
ofclass a could not be converted to
string
catchable fatal error: object
ofclass a could not be converted to
string
notice: object
ofclass a could not be converted to int
<?php
ini_set('display_errors', 1);
class
a function
__tostring()}
$obj1 = new a('張三', 15, '男');
echo
$obj1; //呼叫__tostring(),不會報錯
?>
執行結果
姓名:張三年齡:15,性別:男
將物件當作函式來使用時,會自動呼叫該方法。通常不推薦這麼做。
classa}
$obj = new a();
$obj(); //此時就會呼叫類中的方法:__invoke()
php物件導向之 toString
似曾相識,在php物件導向程式設計之魔術方法 set,曾經介紹了什麼是魔術方法,這一章又介紹乙個魔術方法 tostring tostring 是快速獲取物件的字串資訊的便捷方式,似乎魔術方法都有乙個 自動 的特性,如自動獲取,自動列印等,tostring 也不例外,它是在直接輸出物件引用時自動呼叫的...
php物件導向 toString 用法詳解
本文章來給各位同學介紹一下關於php物件導向 tostring 用法詳解,tostring 方法是自動被呼叫的,是在直接輸出物件引用時自動呼叫的 我們前面說過在類裡面宣告 開始的方法名的方法 php給我們提供的 都是在某一時刻不同情況下自動呼叫執行的方法,tostring 方法也是一樣自動被呼叫的,...
PHP物件導向
1 什麼是物件導向 起初,物件導向 是專指在程式設計中採用封裝 繼承 抽象等設計方法。可是,這個定義顯然不能再適合現在情況。物件導向的思想已經涉及到軟體開發的各個方面。如 物件導向的分析 ooa,object oriented analysis 物件導向的設計 ood,object oriented...