鸿硕今天开发商城过程中发现了两个报错,chrome浏览器没报错,火狐和360均报错。
其中一个是Invalid argument supplied for foreach() in。
例如:
foreach($gou as $mao){
}
这个意思是提示$gou是否为数组,不是数组就不能使用foreach(),所以加个判断即可。
例:
if( is_array($gou) ){
foreach($gou as $mao){
}
}或
if( is_array($gou)&& !empty($gou) ){
foreach($gou as $mao){
}
}
这样就不会报这个错误了。
鸿硕开发今天还碰到一个错误:“Undefined variable: hsterm_array in”,这个错误是提示未定义这个变量$hsterm_array,在代码的合适位置定义一下这个变量即可。
如变量为数组,定义一个空数组即可,例$hsterm_array=array();
如变量为常规变量,直接定义变量为空即可,例$hsterm_array='';
这样就不会报错了。
另外,关于第一种报错,网上的两种参考方法鸿硕摘录如下:
if (is_array($values) || is_object($values))
{
foreach ($values as $value)
{
...
}
}
foreach ((array) $items as $item) {
// ...
}