任何人都知道如何將stdClass的值賦給變量?php stdClass:將對象值賦值給變量
我有一個stdClass對象,當我使用var_dump($userdetails->emailaddress)
打印它時,它確實將值打印爲字符串(31)「asdas。@ fsdf.com」;
但是當我嘗試將對象的值賦給變量,讓說:
$to = $userdetails->emailaddress;
的$to
值成爲NULL ...
任何人都可以幫助嗎?
任何人都知道如何將stdClass的值賦給變量?php stdClass:將對象值賦值給變量
我有一個stdClass對象,當我使用var_dump($userdetails->emailaddress)
打印它時,它確實將值打印爲字符串(31)「asdas。@ fsdf.com」;
但是當我嘗試將對象的值賦給變量,讓說:
$to = $userdetails->emailaddress;
的$to
值成爲NULL ...
任何人都可以幫助嗎?
我認爲沒有任何錯誤/防止從stdClass值分配給變量。請檢查代碼的拼寫。
這聽起來像你正在做的事情錯了,因爲
$obj = new StdClass;
$obj->email = '[email protected]';
$to = $obj->email;
var_dump($to); // string(15) "[email protected]"
注意,變量和對象成員在PHP是區分大小寫的(不像函數和方法),所以
$to = $obj->eMail;
var_dump($to); // NULL
然而,這種情況下您還會收到一份PHP通知
Notice: Undefined property: stdClass::$eMail
這是一個很好的做法e error_reporting(-1)
和開發機器上的PHP.ini指令display_errors
and display_startup_errors
。
由於它是一個CW。隨意使用這個空間進行進一步的調試提示
這應該可以正常工作。例如,嘗試:'php -r'$ x = new stdClass; $ x-> foo =「bar」; $ foo = $ x-> foo; var_dump($ foo);''它會打印「bar」。粘貼你的實際代碼,可能還有其他問題。 – 2010-08-09 10:39:37
這應該工作。你能否提供一個顯示不正確行爲的完整示例?您是否檢查過它不是標識符案例問題(例如$ userDetails而不是$ userdetails)? – 2010-08-09 10:41:02