脚本宝典收集整理的这篇文章主要介绍了php将值插入到使用foreach的数组中,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
$array = array( 'one' => 1,'two' => array('key1' => 'val1','key2' => 'val2'),'three' => array('key1' => 'val1','four' => array('key1' => 'val1','key2' => 'val2') );
并且对于数组中的每个数组(即’二,’三’和’四’),我想插入’key3’=> ‘val3’转换成这些数组.
我试过这个:
foreach($array as $ITem) { if (gettyPE($item) == "array") { $item['key3'] = 'val3'; } }
但它不行,我不知道为什么.在各地使用各种PRint_r,似乎插入’key3’=> ‘val3’成$item,如果我在循环中打印出来,但是原来的数组似乎没有改变.我也试过一个常规的循环,但也没有工作.
foreach
与$item的副本一起工作,所以您不能修改foreach中的原始数组.解决这个问题的一个方法是使用&操作符.
foreach($array as &$item) { if (is_array($item)) { $item['key3'] = 'val3'; } }
另一个更优雅的方式是使用array_walk()
:
array_walk($array,function (&$v,$k) { if (is_array($v)) { $v['key3'] = 'val3'; } });
以上是脚本宝典为你收集整理的php将值插入到使用foreach的数组中全部内容,希望文章能够帮你解决php将值插入到使用foreach的数组中所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。