Home >Backend Development >PHP Tutorial >PHP编程中有哪些常见的低级错误?

PHP编程中有哪些常见的低级错误?

WBOY
WBOYOriginal
2016-06-06 16:43:06903browse

回复内容:

  • isset
<code class="language-php"><span class="x">$a = null;</span>
<span class="x">var_dump(isset($a)); //false</span>
</code>
涉及金钱时,使用浮点数进行计算,然后每月结算时会发现会有几块钱的偏差,但对账时却发现不了问题。

其实应该使用Integer来处理的。

更新,原来可以用bcmath库来专门解决这个问题,推荐packagist.org/packages/ 都怪我打字太快。。。
<code class="language-text">$result = $this->select();
return $reuslt;
</code>
重复造轮子。比如PHP有提供函数来实现某个功能的,但是因为自己不知道,所以自己又写了一个函数出来实现相同的功能,不但浪费时间而且增加了代码的复杂度。
  1. 明文存取用户密码
  2. 硬编码并版本控制后台系统的口令
  3. 不加密cookie
  4. "SELECT * FROM users where id='{$_GET['uid']}'"
  5. 自己DDOS自己 foreach ($uids as $uid) { $service = ..connect...; $service ... }
  6. if (条件满足 ) { ... } 没else,两个月后发现神秘bug
  7. if流,if () { if () { if () { ... } } if () {} },不反向判断简化代码
  8. 在一个view里算半天逻辑输出一小段html
  9. 为传参方便设计Class
  10. 把SESSION当NOSQL数据库用, $_SESSION["post"]['title'] = ....
  11. $data流,$data = .. if (..) $data, $data, $data ... 一路$data
  12. 把Class当名字空间来用,method就是套了Class的function
  13. 这样 $a->b['c']['d']['e'] ... 还不用isset
  14. 把base64当加密算法
  15. throw exception但懒得catch,以至于错误信息出现在http响应里让用户去catch
没加分号 我来,我来这个问题亲身经历
曾经给客户上一个模板的时候,这个模板的错误让我无言以对
贴代码
<code class="language-php"><span class="cp"></span>
<span class="k">echo</span> <span class="s2">"</span></code>
\r\n\t\t
\r\n\t
\r\n\t\r\n\t"; if ( $sourceurl != "-1" && $sourceurl != "" && $sourceurl != "0" && strstr( $sourceurl, "/" ) ) { $SourceArr = explode( "/", $sourceurl ); $sourcename = $SourceArr[1]; $sourcefolder = $SourceArr[0]; echo "\t
\"setsource\" class=\"pluszone\">"; echo $strPlusZone4; echo "
\r\n\t
\"s_setsource\" class=\"pluszonex\">\r\n\t
\"sourcezone\">
\r\n\t
\r\n\t"; echo "; echo "cript>\r\n\t\$(document).ready(function(){\r\n\t\t\$().getPicSource();\r\n\t});\r\n\t\r\n\t"; } echo "\t\"sourcename\" type=\"hidden\" id=\"sourcename\" value=\""; echo $sourcename; echo "\" size=\"35\" />\r\n\t\"sourcefolder\" type=\"hidden\" id=\"sourcefolder\" value=\""; echo $sourcefolder;
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn