以一个下划线开头的PHP函数名称[重复]

Posted

技术标签:

【中文标题】以一个下划线开头的PHP函数名称[重复]【英文标题】:PHP function name starting with ONE underscore [duplicate] 【发布时间】:2013-12-26 05:16:31 【问题描述】:

我正在编写一个庞大的 php 类,并开始意识到我缺乏一些 PHP 编码约定的知识,这些知识可以帮助我整理一下。

我的问题是关于在 PHP 函数名称前使用一个下划线(不是两个,我知道两个下划线的作用):

它实际上是私有函数的 PHP 约定吗? 它是否以任何方式被某些框架、模板引擎等解释为特定的东西? (就像 /** 被 PHPdocumentor 捕获) 除了能够立即判断一个函数是公共的还是私有的之外,还有什么优点吗?

【问题讨论】:

PHP 应用程序中使用了许多种不同的约定。不过,您走在正确的轨道上……很多人使用下划线来表示函数是私有的。 使用 php codesniffer 检查您的 php 文件 你可以在下面找到答案:) [这是为了澄清PHP4中旧OOP中php函数中下划线的含义][1] [1]:***.com/questions/663350/… 感谢您的回答!不确定如何编写“好”代码是业余爱好者最烦人的部分:我总是在猜测自己并最终为展示我的代码感到羞耻...... ;-) 确实,这个问题可能已经被“PHP 类方法中的前导下划线是怎么回事”回答了,但只是部分地,因为我想知道上面的第 2) 和 3) 点, 也。无论如何,谢谢大家的回答! 【参考方案1】:

前导下划线的使用在某种程度上是由意见决定的,尽管它可以被视为匈牙利符号的一种形式,是程序员用来了解它是什么类型的函数的“拐杖”。

不考虑魔术方法,双下划线表示私有方法,而单下划线表示受保护方法。

引入此约定是因为 PHP 4 OOP 没有可见性修饰符,例如 protectedprivate。随着 PHP 5 的推出,您不再需要它。

【讨论】:

以上是关于以一个下划线开头的PHP函数名称[重复]的主要内容,如果未能解决你的问题,请参考以下文章

PHP--01

PHP 简学

PHP 简学

php的$nbsp是啥

在php中,$ 1 = "Hello World"合法吗 为啥

PHP基本语法