2010-02-11 40 views
0

在PHP4中沒有公共,私人等。所以我想知道是否有某種解決辦法,這樣我可以使課程的屬性爲私人,並且只能通過getter/setter訪問如何在PHP4中創建一個私有類屬性?

謝謝!

+3

爲什麼你還在使用PHP4?它在三年前停止了! http://us.php.net/archive/2007.php – 2010-02-11 19:49:58

+0

這是最重要的問題。這是關於語言理論,還是關於編寫實際的新代碼? – 2010-02-11 20:10:00

+1

大量的共享主機仍然只支持PHP 4,但它並不總是可行的,可以輕鬆升級到PHP 5.遺留系統仍然需要維護。 – 2010-02-11 20:24:44

回答

5

你可以用明顯不鼓勵使用這些屬性的獨特語法來解決這個問題。您可以借用下劃線開始方法名稱的python語法將其定義爲私有。

這當然不會阻止任何人使用它,但它的使用會受到阻礙。

3

你不能。由於該屬性本身是公開的,因此任何人都可以訪問它而無需getter/setter來防止您實際執行任何檢查。

2

無法完成,對不起。

通過構建自己的getter和setter函數以及保留哪個屬性是private/public/protected的表來建立一個解決方法當然是可能的,但是它不再是值得的工作,是嗎? PHP 4真的過時了,請參閱here

2

你仍然可以爲該變量編寫getter和setter,但是沒有辦法在PHP 4中創建一個私有函數。

相關問題