为什么需要编码规范
一个好的编码习惯靠平时的习惯养成,团队里有好的编码规范,并且每个人都按照制定的编码规范来执行,那么我相信代码的质量以及可维护性会上升一个档次。而目前PHP要求都要遵守PSR
标准规范,我只列举一部分编码中常用的写法进行说明,更多的规范大家可以搜索PSR标准
。
PHP文件开始标签
对于纯PHP的代码文件,必须以<?php
或者<?
标签开始,并且独占一行,同时不要加?>
的结束标签,至于为啥,感兴趣的自己去了解哈。
<?php
class TestDemo
{
}
Class类的声明
类名必须以大写开头的驼峰式命名(TestDemo),两个花括号换行且独占一行,同时需要用多行注释说明类的创建人以及作用等。
/**
* 这是一个测试Demo类
* Author: gxcuizy
* Date: 2021-05-25 13:57:16
* Class TestClass
*/
class TestDemo
{
}
Class类的常量
类中的常量命名必须全部字母都要大写(HELLO_WORLD),同时单词间以下划线_
分隔,而且最好增加注释说明,单行注释最好在//
后先加一个空格再接注释说明。
// 声明一个常量
const HELLO_WORLD = 'best';
Class类的成员属性
类中的成员属性(也叫成员变量),成员属性的命名可以遵循三个规则:大写开头的驼峰式($UserName)、小写开头的驼峰式($userName)、下划线分隔式($user_name);这三种命名规则都可以,我个人习惯用下划线分隔式
,大家也可以根据自己的习惯选择,但是最好与团队编码规则保持一致即可,同时三个修饰符(public、protected、private)不能少。
// 声明一个公共变量
public $user_name = '';
// 声明一个静态变量
public static $user_age = 18;
Class类的成员方法
类中的成员方法的命名必须采用小写开头的驼峰式命名(testAction)规则,方法的三个修饰符(public、protected、private)不能少,两个花括号换行且独占一行,参数的等号两边各一个空格,方法的注释不要漏了哈,包括方法的作用、参数说明以及返回值说明等。
/**
* 这是一个测试方法
* @param string $msg 参数说明
* @return array
*/
public function testAction($msg = '')
{
// 返回数据格式
$return = array('code' => 200, 'msg' => '');
return $return;
}
/**
* 这是私有方法,方法命名以单下划线开始
* @param string $arg 参数说明
* @return string
*/
private function privateAction($arg = '')
{
return $arg;
}
运算符和表达式
相对于运算符或者不同类型的表达式,不管在任何地方使用,我们都需要在其符号两边有一个空格,例如$a = 1;
、1 + 2
以及1 && 0
等。
/**
* 获取两个数相加的和
* @param int $one 第一个数
* @param int $two 第二个数
* @return int
*/
public function getUserAge($one = 0, $two = 0)
{
$sum = $one + $two;
return $sum;
}
控制结构的规范写法
类似if …… else
、while
、switch ……case
、foreach
、for
等流程控制结构,基本都需要与括号()
和花括号{}
配合使用,要求括号()
两边均有一个空格,而左花括号{
需要与右括号)
同行且有一个空格,而作为结束的右花括号}
则需要单独一行,而主体内容都是包含在花括号{}
中。
/**
* 判断用户是否成年
* @param int $age 年龄
*/
public function logicAction($age = 18)
{
if ($age >= 18) {
echo '已成年';
} else {
echo '未成年';
}
}
快速一键格式化
现在很多IDE都支持一键格式化代码,比如PhpStorm
等,一般快捷键都是Ctrl + Alt + L
,你也可以根据你自己的习惯进行修改快捷键以及代码格式的标准,既可以一键格式化整个文档,也可以只选中某一部分代码进行格式化。PS:如果这个文件不是你一个人创建和修改,请不要轻易一键格式化整个文件,因为会把人家的代码也给格式化了,推荐只格式化你自己的代码即可,每个人都不喜欢别人随意动自己的代码,所以不要搞事情!不要搞事情!不要搞事情!重要的事情说三遍,你懂的。
最后总结
先给出个人的几点建议吧,希望对你有所帮助:
- 别加多余的空格,也就是该加一个空格就加一个就行(按照代码规范来就行)
- 多余的换行删除掉(影响代码视觉美观)
- 调试代码记得及时删除,而不仅仅是注释(怕你久而久之就忘了)
- 代码注释,代码注释,代码注释(再忙也要适当的写注释,不要说后面再加)
- 你可以看不爽别人的代码,但是不要随意修改别人的代码(因为别人看你的代码也不爽)
- 欢迎补充……
我只是抽取了一小部分常用到的代码规范说一下,如果有写的不对的地方请大家指出,我会及时修改,谢谢。如果你还有其他好的编码技巧,也欢迎和大家一起分享。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。