2016-07-23 26 views
-2

我的錯誤日誌填寫了這個: PHP注意:試圖獲取非對象的屬性在/ home /.../wp-includes/query.php線4654PHP注意:試圖獲取非對象的屬性在/wp-includes/query.php上線4654

4654線如下: 返回in_array($ post_obj-> post_type,(數組)$ post_types);

如何診斷究竟是什麼導致了這種情況?我假設其他地方的代碼訪問query.php並導致這個錯誤,但我沒有看到任何提示以外的其他提示。

請不要只是說「忽略它,沒什麼」,我盡我所能保證我的網站沒有錯誤,所以我真的很想知道這是什麼並修復它。

在此先感謝

+0

[參考 - 這個錯誤在PHP中意味着什麼?](http://stackoverflow.com/questions/12769982/reference-what-does-this-error-mean-in-php) – FirstOne

+0

'$ post_obj' is不是一個對象(也許它是空的)。至於_why_,我不知道... – FirstOne

回答

0

訪問數組和對象的值之間存在差異。

從對象訪問一個值,你做它像這樣:

$object->valueKey

這將返回對象中的該鍵的值。

從陣列訪問一個值,你需要做這樣的部份:

$array['arrayKey']

這將返回數組內的鍵的值。

您不能互換使用這些方法。 這個錯誤意味着你的變量不是一個對象。 含義是null或數組或其他數據類型。

試着做var_dump($variable) ;它會告訴你變量裏面的內容是什麼,並告訴你它是一個對象還是一個數組或者其他情況。

相關問題