php格式书写规范,PHP教程:PHP编码书写规范

9 编程惯例

9.1 常量

位于for循环中作为计数器值的数字常量,除了-1,0和1之外,不应被直接写入代码。

9.2 变量赋值

避免在一个语句中给多个变量赋相同的值。它很难读懂。例如:

$fooBar.fChar = $barFoo.lchar = 'c'; // 错误

不要将赋值运算符用在容易与相等关系运算符混淆的地方。例如:if ($c++ = $d++) { // 错误

...

}

应该写成

if (($c++ = $d++) != 0) {

...

}

不要使用内嵌(embedded)赋值运算符试图提高运行时的效率,这是编译器的工作。例如:

$d = ($a = $b + $c) + $r; // 错误

应该写成

$a = $b + $c;

$d = $a + $r;

9.3 其他惯例

9.3.1 圆括号

一般而言,在含有多种运算符的表达式中使用圆括号来避免运算符优先级问题,是个好方法。即使运算符的优先级对你而言可能很清楚,但对其他人未必如此。你不能假设别的程序员和你一样清楚运算符的优先级。if ($a == $b && $c == $d) // 错误

if (($a == $b) && ($c == $d)) // 正确

9.3 大括号

在三种主要的大括号放置规则中,有两种是可以接受的,如下的第一种是最好的:

将大括号放置在关键词下方的同列处:

if (condition)

{

...

while (condition)

{

...

}

}

传统的UNIX的括号规则是,首括号与关键词同行,尾括号与关键字同列:if (condition) {

...

while (condition) {

...

}

}

引起剧烈争论的非原则的问题可通过折衷的办法解决,两种方法任意一种都是可以接受的,然而对于大多数人来说更喜欢第一种。原因就是心理研究学习范畴的东西了。

对于更喜欢第一种还有着更多的原因。如果您使用的字符编辑器支持括号匹配功能的话(例如vi),最重要的就是有一个好的样式。为什么?我们说当你有一大块的程序而且想知道这一大块程序是在哪儿结束的话。你先移到开始的括号,按下按钮编辑器就会找到与之对应的结束括号,例如:if (veryLongCondition && secondVeryLongCondition)

{

...

}

else if (...)

{

...

}

从一个程序块移动到另一个程序块只需要用光标和你的括号匹配键就可以了,不需找匹配的括号。

9.3.3 返回值

设法让你的程序结构符合目的。例如:if (booleanExpression) {

return true;

} else {

return false;

}

应该代之以如下方法:

return booleanExpression;

类似地:

if (condition) {

return x;

}

return y;

应该写做:

return (condition ? x : y);

9.3.4 运算符"?"前的表达式

如果一个包含二元运算符的表达式出现在三元运算符" ? : "的"?"之前,那么应该给表达式添上一对圆括号。例如:(x >= 0) ? x : -x;

9.3.5 特殊注释

在注释中使用XXX来标识某些未实现(bogus)的但可以工作(works)的内容。用FIXME来标识某些假的和错误的内容。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值