php调试遇到Invalid argument supplied for foreach()
1.用前准备:
is_array()的基本语法:
bool is_array ( mixed $var )
is_array() 函数用于检测变量是否是一个数组
。
-
$var:要检测的变量
-
如果检测的变量是数组,则返回
TRUE
,否则返回FALSE
。
使用示范:
<?php $arr_site = array('PHP', 'JAVA', 'C#'); if(is_array($arr_site)){ echo '变量 $arr_site 是一个数组'; } else { echo '变量 $arr_site 不是一个数组'; } ?>
输出结果为:变量 $arr_site
是一个数组。
2.错误原因:
在php
中使用foreach
循环遍历时报Invalid argument supplied for foreach()错误,是因为循环的数据不是一个有效的数组。我们可以使用is_array()
在foreach
之前判断一下数据源即可。
if(is_array($data)) { foreach($data as $value) {...} }
推荐:《php视频教程》《 php教程》