为什么在 PHP 函数名称中使用双下划线 (__)?
2022-08-30 18:26:39
以下是许多在名称前带有双下划线的函数:
__construct,
__destruct,
__call,
__callStatic,
__get,
__set,
__isset,
__unset,
__sleep,
__wakeup,
__toString,
__invoke,
__set_state
__clone
为什么在这些函数之前使用这些下划线?
以下是许多在名称前带有双下划线的函数:
__construct,
__destruct,
__call,
__callStatic,
__get,
__set,
__isset,
__unset,
__sleep,
__wakeup,
__toString,
__invoke,
__set_state
__clone
为什么在这些函数之前使用这些下划线?
如下所述:
PHP 保留所有以 __ 开头的函数名称作为魔法。建议您不要在 PHP 中使用带有 __ 的函数名,除非您想要一些有文档记录的魔术功能
长话短说,PHP隐式调用这些函数,您自己不应该使用此命名约定。
皮质下炎。在PHP中,下划线已经在不同的地方使用,例如作为$_XYZ超全局中的前缀。
您列出的方法名称是神奇的方法。为了使它们看起来更特别,它们以两个下划线为前缀。- 当使用一个下划线作为公告已经太普遍时,通常会发生这种情况。此命名模式并非特定于 PHP。
你仍然可以用两个前导来定义自己的函数,但你不应该避免与真正的魔术方法或未来的语言扩展混淆。(虽然这不太可能。__