是否有php.ini設置或其他一些技巧來強制PHP在使用未定義的常量時產生致命錯誤或類似錯誤,而不是假設同名字符串的(可笑的)默認行爲?更改未定義常量的PHP行爲?
默認行爲可能是一個巨大的安全風險,但更多的時候會導致應用程序錯誤。我意識到我可以使用defined()
在請求值之前檢查常量的存在,但這會導致冗餘/醜陋的代碼,並且仍然容易出現開發人員錯誤。我們非常小心地確保使用的常量已經定義好,但是這個問題偶爾會潛入到生產中,如果可能的話,我想盡量避免它。一個致命的錯誤會更多地「在你的臉上」,並且不太可能被QA擠壓。
+1。我知道類常量,但我總是認爲命名空間常量在這方面與不合格的常量相同。謝謝你的提示。 – FtDRbwLXw6