这篇文章在很早以前就看到了,由于最近要自己做一些主题方面的东西,代码需要更加规范,用这些反面的例子来约束自己,告诉自己代码不应该这样写,虽然它也能实现功能,但那样做并不明智,也不美观。现在将这些小花絮分享给大家。
目录引用结构
这是在找爹,找到后来连自己都不知道目录的爹是谁了。何不定义一个目录变量呢?
if else嵌套逻辑
这样的代码难免会出现,但不要大片的出现在PHP代码中,一个function里面不要到处都是这种嵌套的if else结构,它毕竟不是算法。
三元运算符
这种三元运算符的用法看起来有些别扭,用一个if就能完成的代码,不应该写得这么绕。
html字符转义
0)
{
$str = str_replace(,,$str);
$str = str_replace(,,$str);
$str = str_replace(,,$str);
$str = str_replace(,,$str);
$str = str_replace(,,$str);
$str = str_replace(,,$str);
$str = str_replace(,,$str);
}
$str;
}
也许你自己去实现过html字符的转义函数,但这明显是不熟悉PHP手册的同学的做法,也很容易漏掉一些字符。
当你想实现一些很通常的方法时,先去翻翻开发手册。
制表符
制表符根本就不是html的实体,也请你记住还有t;pre>这个标签
坑Mysql
也许你是为了测试mysql的性能,也许你只是为了看看它什么时候能挂掉。Mysql不是爹,它坑不起。
字符串替换
这真是个增加代码行数的好方法,但我想您肯定不想重复劳动。为了避免复制,可以试试数组:
str_replace也支持数组作为参数,效果和上面等同
或者可以使用用正则替换函数,论上数组替换比正则的效率高。
大量的echo代码
";
;
";
";
(($_GET[])) ($_GET[])
当大量的echo出现在你的PHP代码中时,应当考虑使用模板引擎了,推荐你使用。或者include一个文本文件,PHP将直接输出这些html代码。
注意最后一句代码,它可能会毁掉你整个系统!如果这段不是你加入的,那么你可能已经被入侵了。请记住 几个原则
- 1、永远都不要尝试使用 eval 函数
- 2、永远都不要直接使用
$_GET 和 $_POST 等用户输入的 变量。
过多的条件判断
1) {
sendRequest($param);
}
过多的条件判断等于没有判断,应该考虑精简一下。
1) {
sendRequest($param);
}
switch case
$value ) {
( !is_array($value[]) ) ;
asort($form[][$key][]);
}
;
$formid == :
( $url = variable_get(,) )
$form[] = $url;
;
}
刚入行时都写过这种类似的代码,以此作为小小的怀念吧,虽然方法很傻,但是那时候功能实现了还是很开心的。
英文原文: (编辑:安卓应用网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|