在查看各种PHP库时,我注意到很多人选择使用单个下划线为某些类方法添加前缀,例如
public function _foo()
Run Code Online (Sandbox Code Playgroud)
...代替...
public function foo()
Run Code Online (Sandbox Code Playgroud)
我意识到这最终归结为个人偏好,但我想知道是否有人对这种习惯的来源有所了解.
我的想法是,它可能是从PHP 4继承的,在类方法可以被标记为受保护或私有之前,作为暗示"不要从类外调用此方法"的一种方式.然而,我也想到它可能起源于我不熟悉的某个地方(一种语言),或者背后可能有很好的推理,我会从中获益.
任何想法,见解和/或意见将不胜感激.
这是我一直想知道的一种一般性调查.我通过其他人的代码注意到了很多,并且从来没有真正知道实际原因,只是按照趋势,所以这里.
为什么一些方法和属性在前面用下划线命名,而其他方法和属性不是?例如,当具体地将一个使用function _method(),并且当将一个使用function method(),或,换言之,private $_someVariable与private $someVariable?