业务逻辑层的魔法函数、魔法变量
魔法函数、魔法变量,最好只在框架代码、数据访问层中使用,在业务逻辑层或表现层使用有以下缺点
- 会增加代码逻辑的复杂度
- 不利于逻辑的移植,限制了代码在不同语言间的重用。
变量不作声明和初始化
PHP作为若类型语言,如果不做声明和初始化,非常容易出现脏数据,比如上一次循环结束后没有清理遗留数据等。
使用base
base的作用相当于多继承,多继承在语义上容易产生歧义。应该保持使用单继承的原则。
goto 语句
降低代码的可读性和可维护性
匿名函数(Lambda functions)和
匿名函数不利于重用和维护。
闭包(closures)
避免使用闭包,应该用Namespace或者class进行封装。
直接使用字符串反射变量、类、函数
使用Reflection类代替 ,提高代码可读性和可维护性。
数组遍历使用计数变量
使用 foreach遍历,因为foreach 性能更高,语法更简洁
总结
- 如果逻辑在使用语言表达时,可以选用多种语法,则应该C/C++、Java 或其他语言中最通用的语法
- 谨慎使用或者不用只有PHP拥有的特性函数或语法