PHP函数名称以下划线开头是什么意思?

例如:__construct()

我知道构造意味着什么,但我已经看到函数以下划线或双下划线开头的其他地方,我只是不确定其意义。

有帮助吗?

解决方案

这意味着PHP会隐式调用它。

它被称为'魔法'

此外,它是两个下划线,而不是一个。

在此处了解详情: PHP Magic Methods

其他提示

在PHP中,函数以两个下划线开头,通常具有特殊含义。从手册:

  

PHP保留所有函数名称   以__开头是神奇的。它是   建议您不要使用   PHP中带__的函数名,除非   你想要一些记录下的魔法   功能。

例如__construct()是一种特殊方法,在初始化对象时会自动调用。

Se还: http://php.net/manual/en/ language.oop5.magic.php

还有一个常见的命名<!>编码样式<!>它使用一个初始下划线来表示方法或属性是私有/受保护的。我认为它非常普遍。

如其他答案中所述,双下划线用于<!> quot; magic <!> quot;方法。这个想法是用户永远不会故意使用两个下划线作为方法名称,因此几乎没有碰撞的风险。我认为,它不是一个单一的下划线的原因是,在'private'关键字出现以强制执行OO私有性之前,单个下划线是私有方法的流行惯例。 >

在codeigniter中,如果在带有下划线的控制器中启动方法,路由器将知道不允许从URL访问它。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top