这是我的数组
$myArr = array(array('one', 'two'), array('one', 'two'));
我想向其中的每个数组添加一个元素$myArr。我不想循环遍历内部的每个数组并添加该元素。有没有更快的方法来实现这一点数组映射 or 数组行走..最好用一行代码?
结果数组应该是这样的
$myArr = array(array('one', 'two','three'), array('one', 'two','three'));
非常感谢
明白了,点赞@strager https://stackoverflow.com/users/39992/strager
$myvar = 'Three';
$myArr = array_map(function ($subarray) { global $myvar; $subarray[] = $myvar; return $subarray;}, $myArr);
With array_walk
:
array_walk($myArr, create_function('&$subarray', '$subarray[] = "three";'));
With array_map
:
$myArr = array_map(create_function('$subarray', '$subarray[] = "three"; return $subarray;'), $myArr);
使用匿名函数array_map
(未经测试;我无法访问 PHP5.3):
$myArr = array_map(function ($subarray) {
$subarray[] = "three";
return $subarray;
}, $myArr);
或者当然,更好的解决方案(对于 PHP
function pushToEndOfSubarrays($array, $item) {
$ret = array();
foreach ($array as $key => $subarray) {
$subarray[] = $item;
$ret[$key] = $subarray;
}
return $ret;
}
$myArr = pushToEndOfSubarrays($myArr, 'three');
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)