在PHP4中没有公共,私人等。所以我想知道是否有某种解决方法,以便我可以将类的属性设为私有,只能通过getter / setter访问
谢谢!
答案 0 :(得分:5)
您可以使用明确不鼓励使用此类属性的独特语法来解决此问题。您可以借用使用下划线启动方法名称的python语法将其定义为私有。
当然,这并不会阻止任何人使用它,但不鼓励使用它。
答案 1 :(得分:3)
你做不到。由于该属性本身是公共的,任何人都可以在没有getter / setter的情况下访问它,从而阻止您实际执行任何检查。
答案 2 :(得分:2)
无法做到,抱歉。
通过建立自己的getter和setter函数并保留一个属性为private / public / protected的表来构建一个变通办法当然是可能的,但它不再值得付出努力,是吗? PHP 4确实过时了,请参阅here。
答案 3 :(得分:2)
你仍然可以为该变量编写getter和setter,但是没有办法在PHP 4中将函数设为私有。