前端之家收集整理的这篇文章主要介绍了
php – 将值添加到foreach循环内的数组中,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_
403_0@
我正试图在foreach循环中动态编辑一个数组.我基本上分析了每个键,如果这个键匹配我想要的键,我想在这个键之后立即在数组中
添加另一个键.
如果我拿这个代码,
$values = array(
'foo' => 10,'bar' => 20,'baz' => 30
);
foreach($values as $key => $value){
print $value . ' ';
if($key == 'bar'){
$values['qux'] = 21;
}
}
我有两个问题,
>首先,输出是10 20 30而不是预期的10 20 30 21
>第二,即使我解决了第一个问题,我的值仍然会在我的数组末尾添加
我如何在bar和baz之间添加qux条目?
谢谢你的想法.
在循环内部,Foreach不会循环
添加到数组中的新值.
如果要在两个现有值之间添加新值,可以使用第二个数组:
$values = array(
'foo' => 10,'baz' => 30
);
$newValues = array();
foreach($values as $key => $value)
{
$newValues[$key] = $value;
if($key == 'bar')
{
$newValues['qux'] = 21;
}
}
print implode(' ',$newValue);
另外,请参阅StackOverflow上我最喜欢的一个问题,讨论foreach循环:How does PHP ‘foreach’ actually work?