PHP注释语法规范与命名规范详解篇
HP注释规范
注释在写代码的过程中非常重要,好的注释能让你的代码读起来更轻松,在写代码的时候一定要注意注释的规范。
“php是一门及其容易入门的语言,刚入门的新手不到几分钟的时间可能就会用echo打印出一个helloworld!但是他是真正的程序员吗?怎么来定义程序员呢?如果想真正成为一个程序员,那么就必须遵循一套程序书写规范,”
我们经常编写一些函数,但是这些函数可能也只有自己能看得懂,甚至过一段时间自己也不认识自己写的了,那么怎么办呢?最好的办法当然是给给自己的代码加上注释。
我们可能熟悉很多注释的写法CpearPHP注释等等,但我们用到的主要还是#和/**/。
#是一种简短的注释方法。可能你会用它去注释一个变量,或者调用的一个方法。/**/我们可能还在用它去注释掉一大段代码,但是怎么用它去标准的注释一个函数呢?
/**
*@name名字
*@abstract申明变量/类/方法
*@access指明这个变量、类、函数/方法的存取权限
*@author函数作者的名字和邮箱地址
*@category组织packages
*@copyright指明版权信息
*@const指明常量
*@deprecate指明不推荐或者是废弃的信息
*@example示例
*@exclude指明当前的注释将不进行分析,不出现在文挡中
*@final指明这是一个最终的类、方法、属性,禁止派生、修改。
*@global指明在此函数中引用的全局变量
*@include指明包含的文件的信息
*@link定义在线连接
*@module定义归属的模块信息
*@modulegroup定义归属的模块组
*@package定义归属的包的信息
*@param定义函数或者方法的参数信息
*@return定义函数或者方法的返回信息
*@see定义需要参考的函数、变量,并加入相应的超级连接。
*@since指明该api函数或者方法是从哪个版本开始引入的
*@static指明变量、类、函数是静态的。
*@throws指明此函数可能抛出的错误异常,极其发生的情况
*@todo指明应该改进或没有实现的地方
*@var定义说明变量/属性。
*@version定义版本信息
*/
注释的信息很全面,可能有很多我们用不到,红色部分是我们经常用到的。
示例:php里面常见的几种注释方式:
1.文件的注释,介绍文件名,功能以及作者版本号等信息
/** *文件名简单介绍 * *文件功能 *@author作者 *@version版本号 *@date2020-02-02 */
文件头部模板
/** *这是一个什么文件 * *此文件程序用来做什么的(详细说明,可选。)。 *@authorrichard*@version$Id$ *@since1.0 */
2.类的注释,类名及介绍
/** *类的介绍 * *类的详细介绍(可选) *@author作者 *@version版本号 *@date2020-02-02 */
/** *类的介绍 * *类的详细介绍(可选。)。 *@authorrichard*@since1.0 */ classTest { }
3.函数的注释,函数的作用,参数介绍以及返回类型
/** *函数的含义说明 * *@accesspublic *@author作者 *@parammixed$arg1参数一的说明 *@parammixed$arg2参数二的说明 *@returnarray返回类型 *@date2020-02-02 */
函数头部注释
/** *some_func *函数的含义说明 * *@accesspublic *@parammixed$arg1参数一的说明 *@parammixed$arg2参数二的说明 *@parammixed$mixed这是一个混合类型 *@since1.0 *@returnarray */ publicfunctionthisIsFunction($string,$integer,$mixed){returnarray();}
程序代码注释
1.注释的原则是将问题解释清楚,并不是越多越好。
2.若干语句作为一个逻辑代码块,这个块的注释可以使用/**/方式。
3.具体到某一个语句的注释,可以使用行尾注释://。
/*生成配置文件、数据文件。*/ $this->setConfig(); $this->createConfigFile();//创建配置文件 $this->clearCache();//清除缓存文件 $this->createDataFiles();//生成数据文件 $this->prepareProxys(); $this->restart();
PHP命名规范
1.目录和文件
目录使用小写+下划线
类库,函数文件统一以.php为后缀
类的文件名均以命名空间定义,并且命名空间的路径和类库文件所在路径一致
类文件采用驼峰法命名(首字母大写),其他文件采用小写+下划线命名
类名和类文件名保持一致,统一采用驼峰法(首字母大写)
2.函数和类,属性命名
类的命名采用驼峰法(首字母大写),例如User、UserType,默认不需要添加后缀,例如UserController应该直接命名为User
函数的命名使用小写字母和下划线(小写字母开头)的方式,例如get_client_ip
方法的命名使用驼峰法(首字母小写),例如getUserName(如果方法有返回值,那么目前习惯上将首字母用小写的属性类型,如s(string),i(int),f(float),b(boolean),a(array)等)
属性的命名使用驼峰法(首字母小写),例如tableName、instance(目前习惯上将首字母用小写的属性类型,如s(string),i(int),f(float),b(boolean),a(array)等)
以双下划线“__”打头的函数或方法作为魔法方法,例如__call和__autoload
3.常量和配置
常量以大写字母和下划线命名,例如APP_PATH和THINK_PATH
配置参数以小写字母和下划线命名,例如url_route_on和url_convert
4.数据表盒字段
数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如think_user表和user_name字段,不建议使用驼峰和中文作为数据表字段命名。