为啥这样的二维数组foreach后只有最后一个值输入
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了为啥这样的二维数组foreach后只有最后一个值输入,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1684字,纯文字阅读大概需要3分钟。
内容图文
![为啥这样的二维数组foreach后只有最后一个值输入](/upload/InfoBanner/zyjiaocheng/231/f09ac59514634a5e9a5cdc430fe2fbe0.jpg)
$res = array(
array(
'goods_id' => 14,
'goods_number' => 1
),
array(
'goods_id' => 16,
'goods_number' => 1
),
array(
'goods_id' => 18,
'goods_number' => 1
)
);
上面数组,我想遍历出goods_id 从14 到 18,也就是14,15,16,17,18 ,从而得到goods_id 对应的 goods_number,如果goods_id不存在数组里,goods_number就给予0给它。
foreach($res as $value)
{
if($value['goods_id'] == 14)
{
echo $value['goods_number'];
echo "
";
}
else
{
echo 0;
echo "
";
}
if($value['goods_id'] == 15)
{
echo $value['goods_number'];
}
else
{
echo 0;
echo "
";
}
if($value['goods_id'] == 16)
{
echo $value['goods_number'];
}
else
{
echo 0;
echo "
";
}
if($value['goods_id'] == 17)
{
echo $value['goods_number'];
}
else
{
echo 0;
echo "
";
}
if($value['goods_id'] == 18)
{
echo $value['goods_number'];
}
else
{
echo 0;
echo "
";
}
}
为什么我这样foreach 不行呢?
我要的结果是:
goods_id:14 时 goods_number:1
goods_id:15 时 goods_number:0
goods_id:16 时 goods_number:1
goods_id:17 时 goods_number:0
goods_id:18 时 goods_number:1
所以应该echo的结果是
1
0
1
0
1
为什么我的foreach 得到的不是这样的结果呢?
------解决方案--------------------
$res = array(
array(
'goods_id' => 14,
'goods_number' => 1
),
array(
'goods_id' => 16,
'goods_number' => 1
),
array(
'goods_id' => 18,
'goods_number' => 1
)
);
$newArr = array();
foreach ($res as $key => $value) {
$newArr[$value['goods_id']] = $value['goods_number'];
}
//var_dump(array_values($res));exit;
$range = range(14, 18);
foreach ($range as $keys => $values) {
if(array_key_exists($values, $newArr)){
echo 'goods_id:'.$values.' 时 goods_number:'.$newArr[$values];
echo '
';
}else{
echo 'goods_id:'.$values.' 时 goods_number:0';
echo '
';
}
}
内容总结
以上是互联网集市为您收集整理的为啥这样的二维数组foreach后只有最后一个值输入全部内容,希望文章能够帮你解决为啥这样的二维数组foreach后只有最后一个值输入所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。