我被一個非常奇怪的bug卡住了。我有一個對象叫做$行,看起來像這樣:PHP允許在stdObject中有重複的屬性嗎?
stdClass Object
(
[title] => Some Title
[body] => My body
[topic] => Topic
[dataType] => Survey
[csvrownum] => 1
)
我只是想打印出來的title屬性以下列方式:
print_r($row->title);
但是由於某些原因不輸出什麼。
然後我試圖手動設置標題屬性,並在之後打印出來,這樣的事情:
$row->title = 'My Title';
print_r($row->title);
令人驚訝的是工作,但爲什麼呢?爲了使這更奇怪,我決定的var_dump對象手動設置標題變量之後:
$row->title = 'My Title';
var_dump($row);
這就是我的了:
class stdClass#391 (6) {
public $title =>
string(3) "Some title"
public $body =>
string(7) "My body"
public $topic =>
string(6) "Topic"
public $dataType =>
string(17) "Survey"
public $csvrownum =>
int(1)
public $title =>
string(8) "My title"
}
公告標題密鑰複製與不同值。這有可能發生嗎?
您的其他'標題'中有不可打印的字符 – tkausl
我認爲@tkausl是正確的。注意var轉儲中第一個標題的長度是3,而不是8.可能是編碼問題。 –