我想衡量人們對使用靜態類而不是名稱空間的意見。我來自C++背景,非常喜歡它的語法以及它如何讓你構造代碼。我最近決定,我需要將我的代碼分成邏輯單元而不是文件。例如,我喜歡像User :: login to user_login這樣的調用。所以,我做了一些Google搜索,並發現PHP具有名稱空間。我的解脫並沒有持續很長時間,我真的不喜歡它的語法;它給我的函數調用增加了更多的混亂。所以,此刻我正在使用靜態類來模擬名稱空間。這有什麼缺點嗎?PHP靜態類或命名空間
我在PHP Namespaces vs Classes with static functions處發現了一個類似的問題,但沒有討論太多。
此外,有沒有辦法避免以下情況:我以爲這將是確定調用同一類的功能,而無需指定名稱
class Test {
public static void myFunc() {
Test::myOtherFunc();
}
public static void myOtherFunc() {
}
}
,但顯然不是。是否有任何解決方法(例如在C++中使用關鍵字)。
'self ::'和'$ this->'在PHP中用於分別調用您自己的靜態和實例方法。 – 2012-08-14 03:50:21
所以沒有辦法讓資格是隱含的?即檢查當前類的功能? – user1520427 2012-08-14 03:53:00
不,但我發現明確是一件好事:) – 2012-08-14 03:54:25