PHP之数组foreach,join
程序员文章站
2022-05-20 21:08:21
...
一,foreach的使用
例如:$arr = array("one", "two", "three");
reset($arr);//把数组的内部指针指向第一个元素,并返回这个元素的值。若失败,则返回 FALSE。
//数组循环输出1
foreach ($arr as $value) {
echo 'Value = '.$value.'<br />';
}
//数组循环输出2
foreach ($arr as $key => $value) {
echo "Key: $key; Value: $value<br />\n";
}
二,join 把数组元素组合为一个字符串
$in = join("', '", $arr);
三、foreach相关异常解决办法
1,问题Warning: Invalid argument supplied for foreach() in 完善解决方案
解决方案:将foreach中的变量,用is_array()判断一下,或强制转化为array
例如
例如:$arr = array("one", "two", "three");
reset($arr);//把数组的内部指针指向第一个元素,并返回这个元素的值。若失败,则返回 FALSE。
//数组循环输出1
foreach ($arr as $value) {
echo 'Value = '.$value.'<br />';
}
//数组循环输出2
foreach ($arr as $key => $value) {
echo "Key: $key; Value: $value<br />\n";
}
二,join 把数组元素组合为一个字符串
$in = join("', '", $arr);
三、foreach相关异常解决办法
1,问题Warning: Invalid argument supplied for foreach() in 完善解决方案
解决方案:将foreach中的变量,用is_array()判断一下,或强制转化为array
例如
Php代码
function getPartsNum($jsonStr){
$total = 0;
if( $jsonStr && ($jsonStr != 'NAN') && ($jsonStr != '[]') ) {
$detail = json_decode($jsonStr);
if(is_array($detail)){//或foreach ( (array)$detail as $d)
foreach ($detail as $d){
$total += $d->num;
}
}
}
return $total;
}