我知道兩者都有同樣的結果,但我期待聽到有關表現。Yii2中:: class vs :: className()的區別?
我不知道,但我認爲..
「
MyClass::className()
」會導致類文件被加載,以及(其Yii的功能誰的身體只是單純地get_called_class()
)「
MyClass::class
「我認爲這個php的本地類屬性不會加載類php文件,只是基於當前命名空間或use
返回其名稱。
讓我知道我是否正確?或請強調你的知識。
有許多地方,我們只是想要完全合格的班級名稱,即使它不會被使用的時間。但我也不喜歡把硬編碼字符串(由於硬重構)
建議的做法是調用Xyz :: className()來獲取類名字符串,以便在編譯階段可以接收IDE自動完成支持以及錯誤檢測。 –