使用 php 将键值推送到空数组中
Push key value in empty array using php
我有关联数组和与该键相关的值包含 json_encoded 数据所以我转换它并得到数组,我使用 array_walk 迭代每个数组值然后使用打印值foreach 循环,但同时我想将(键和值)推入在外部声明但未插入任何值的空数组中。
注意:这里$result
是关联数组,它的键包含值是json数据,我不想使用嵌套的foreach循环所以使用array_walk()
$new_array=array();
array_walk($result, function(&$a, &$key) use($i) {
$var = '';
foreach (json_decode($a) as $row_key => $row_value) {
if ($row_key == 'abc') {
$new_array[$row_key][] = array( // push key,value in $new_array
$row_key => $row_value,
);
} else {
echo $row_key . " : " . $row_value ;
}
}
});
引用 $new_array
:
array_walk($result, function(&$a, &$key) use($i, &$new_array) {
此外,我认为通过引用传递 $a
和 $key
没有任何意义。也许,您没有向我们展示完整的代码,通过引用 $a
和 $key
传递是有意义的,但目前,您甚至没有在代码中使用 $key
。
那通过它的目的是什么?
// probably:
array_walk($result, function($a) use($i, &$new_array) {
我有关联数组和与该键相关的值包含 json_encoded 数据所以我转换它并得到数组,我使用 array_walk 迭代每个数组值然后使用打印值foreach 循环,但同时我想将(键和值)推入在外部声明但未插入任何值的空数组中。
注意:这里$result
是关联数组,它的键包含值是json数据,我不想使用嵌套的foreach循环所以使用array_walk()
$new_array=array();
array_walk($result, function(&$a, &$key) use($i) {
$var = '';
foreach (json_decode($a) as $row_key => $row_value) {
if ($row_key == 'abc') {
$new_array[$row_key][] = array( // push key,value in $new_array
$row_key => $row_value,
);
} else {
echo $row_key . " : " . $row_value ;
}
}
});
引用 $new_array
:
array_walk($result, function(&$a, &$key) use($i, &$new_array) {
此外,我认为通过引用传递 $a
和 $key
没有任何意义。也许,您没有向我们展示完整的代码,通过引用 $a
和 $key
传递是有意义的,但目前,您甚至没有在代码中使用 $key
。
那通过它的目的是什么?
// probably:
array_walk($result, function($a) use($i, &$new_array) {