-4
注意:未定義的變量:在記錄儀...在線20注意:未定義的變量:記錄
if (!is_object($logger)) $logger = new logger;
/application_bottom.php我通過
if (!is_object('logger')) $logger = new logger;
但是,爲什麼解決了這個?有人可以解釋這種
注意:未定義的變量:在記錄儀...在線20注意:未定義的變量:記錄
if (!is_object($logger)) $logger = new logger;
/application_bottom.php我通過
if (!is_object('logger')) $logger = new logger;
但是,爲什麼解決了這個?有人可以解釋這種
以下條件:
if (!is_object('logger'))
基本上問「如果一個對象的字符串‘記錄’。」這將始終返回false,而不是正確的解決您的問題。你可以使用的isset()
和is_object()
的組合來實現你想要的:
if (!(isset($logger) && is_object($logger))) $logger = new logger;
你有你的錯誤,因爲運行時is_object()
,受如果$logger
設置cheking並使用&&
操作$logger
沒有定義你要確保如果isset()
返回false,那麼is_object()
將不會運行。
感謝您的改進和背景信息。問題解決了。 – Simpel
您的解決方案不正確。它會一直創建一個新對象並將其放置在$ logger中 –
您會收到通知,因爲在您調用$ logger之前沒有定義它。在字符串上調用'is_object'將始終返回false。不好的解決方案。你應該做一個'isset'。 – tlenss