Writing /home/www/dokuwiki/conf/plugins.local.php failed
Hotfix release available: 2024-02-06b "Kaos".
upgrade now! [55.2] (what's this?)
Hotfix release available: 2024-02-06a "Kaos".
upgrade now! [55.1] (what's this?)
New release available: 2024-02-06 "Kaos".
upgrade now! [55] (what's this?)
Hotfix release available: 2023-04-04b "Jack Jackrum".
upgrade now! [54.2] (what's this?)
start:acpf_php_rule
命名规范
PSR规范
PSR规范很多地方值得借鉴,连接传送门: https://www.jianshu.com/p/b33155c15343
变量
变量最好是自解释的。
局域变量
[建议]采用驼峰形式来表示,使用英文名词、动词。变量最前面带类型。 长度最好不超过25个字符
比如:
strUserName, 表示用户名称,并且是字符串类型。
类型前缀:
- str : 表示字符串
- int :表示数字类型
- flt :表示浮点数
- chr :表示字符
- arr : 表示数
- obj:表示对象
- bol: bool对象
全局变量
全局变量不推荐大家使用,如果一定要用一定要小心。 变量命名规则是在局域变量前加上g,比如strUserName的全局变量时gStrUserName。
常量
使用英文名词、动词来表示,所有字母大写, 中间用”_”来隔开。 比如 “DATA_PATH”
函数
函数名称还用驼峰形式来表示。 getUserName
类名
采用英文单词名称,驼峰形式。 比如:UserLogin
神奇的数字
不允许出现神奇数字,比如intType == 1; 需要定义,比如: Define(“USER_TYPE_STUDENT”, 1); $intType = USER_TYPE_STUDENT;
书写规制
- [强制]用4个空格来替换tab来排版对齐。
- {}
{ 跟在函数或者类定义后面。 比如:getUserName($intUid) { }
- 数组,定义数组时候,分行来实现。最后一个数值带上一个“,”。
比如:
$arrUser = array( “uid” => 1, “uname” => 2, );
- 长句,最好能切分开成多段。
- If..else..语句,foreach,while语句
无论if或者else是否只有一行,都要带上{} 比如: If ($bolAdmin){ $intUserId = 1; } Else{ $intUserId = 2; } while($intIndex <= 100){ $intIndex++; }
- If..elseif..else语句。使用if..elseif..else语句,不推荐用if…else if .. else语句
- 3目运算必须简写。
bolUser ? 1 : 0; (1不能省略)
- 一个文件只能包含一个类。
- 文件最后不要加上?>
- 私有函数:_getUserInfo();
- [建议]If、while、foreach嵌套不能超过3
注释
- [强制]类的注释必须有,规范如下:(推荐用Doxygen插件)
/** * @file Log.php * @synopsis 业务日志类,功能: * 1.按照配置日志格式打印warning、error、notic日志,日志格式 * 2....... * @author yezemin, [email protected] * @version 1 * @date 2014-06-23 */
- [强制]函数的注释,关键函数必须注释
/** * @synopsis getUserName * 获取用户名 * @returns */ public function getUserName(intUserId){ }
- [强制]函数内注释,对if,for、while循环超过30行代码的,对这个数据块加上注释。
- [强制]常量注释,业务层的常量必须加上注释
Const DATA_PATH = “/home/www/data”; //数据层目录变量
start/acpf_php_rule.txt · Last modified: 2023/10/31 07:38 by 127.0.0.1