题
PHP函数名称以下划线开头是什么意思?
例如:__construct()
我知道构造意味着什么,但我已经看到函数以下划线或双下划线开头的其他地方,我只是不确定其意义。
解决方案
其他提示
在PHP中,函数以两个下划线开头,通常具有特殊含义。从手册:
PHP保留所有函数名称 以__开头是神奇的。它是 建议您不要使用 PHP中带__的函数名,除非 你想要一些记录下的魔法 功能。
例如__construct()是一种特殊方法,在初始化对象时会自动调用。
还有一个常见的命名<!>编码样式<!>它使用一个初始下划线来表示方法或属性是私有/受保护的。我认为它非常普遍。
如其他答案中所述,双下划线用于<!> quot; magic <!> quot;方法。这个想法是用户永远不会故意使用两个下划线作为方法名称,因此几乎没有碰撞的风险。我认为,它不是一个单一的下划线的原因是,在'private'关键字出现以强制执行OO私有性之前,单个下划线是私有方法的流行惯例。 >
在codeigniter中,如果在带有下划线的控制器中启动方法,路由器将知道不允许从URL访问它。
不隶属于 StackOverflow