我是PHP的OOP的忠實粉絲,但我覺得像定義類方法得到混亂如此之快。在C++中,我在OOP中擁有相當不錯的背景,而且我對它在那裏的處理方式很滿意,並且很好奇在php中是否有類似的方法來處理它。PHP OOP函數聲明
更具體地說,這裏是我的意思。我喜歡在C++中如何定義類頭(myclass.h),然後在實現文件(myclass.cc)中定義函數的實際細節。我發現,這可以很容易地複製使用php中的接口,但我還沒有找到一個好的解決方案如下:
我喜歡根據它們如何訪問,在不同的文件中組織我的代碼,例如,公開的方法可以在班級之外調用,而私人方法將在其他地方組織 - 這是個人偏好。
伊夫試圖在PHP定義像類方法:
private function MyPHPClass::myFunction(){ }
當定義ISNT直接在類塊中({}),但我還沒有過任何成功這樣做。
我已經通過php.net的所有網頁,但沒有找到像這樣的東西。我假設沒有這樣的支持,但我想我會問。
謝謝
請問您爲什麼要儘量避免magic_methods?謝謝 – RobertPitt 2010-05-30 17:41:34
魔法方法比普通方法慢,所以避免它們通常是個好主意。 – Maerlyn 2010-05-30 19:12:27
我同意他們比命名方法的命名要慢,但是如果這個類是一個泛型類,並且可能不需要單獨使用100-200個方法,但是當涉及到這個方法時,__get/__ set/__ call系統會更有效率,例如$輸入 - >的get-> ID( 'INT');而不是實際定義id()作爲一種方法,只是爲了從存儲中獲取它而實際使用。我明白你的觀點,但在某些情況下,它很好,值得一些。 – RobertPitt 2010-05-30 21:48:08