Funny Bug || Sky Hole

1:插入数据库,没有给一个必填的字段赋值

此类bug看上去很废话,实际后期常遇到,比如别人给表新添加了一个字段 a  int型

添加字段肯定是工具添加的 一般char类型 工具都会自动勾选可以null  但int型有可能不默认带个空 

这时候 万一没给个默认值0什么的

程序就报错了。

---解决

(1)记得给默认值

(2)不让萌新直接去动数据库

2:变量重名

多数情况下显而易见

但比如

foreach($data as $v){

}

foreach($data1 as $v){

}

这样的...首先其实也没问题 $v每次都被覆盖了 虽然不建议

但万一上面是这么写的

foreach($data as &$v){

}

foreach($data1 as $v){

}

呵呵..

---解决

最好还是不要重命变量 

3:php的一些尿性导致的

(1)比如strpos   需要!==false来判断

(2)比如0开头的数字会当做8进制处理

(3)array_merge($arr1,$arr2) 后面会覆盖前面 所以后面的最好先判断下是否为空之类

...

4:

原文地址:https://www.cnblogs.com/dk1988/p/8778510.html