您好所有stackoverflow成员,请帮助我解决有关阵列操作的问题。
stores_array:
Array
(
[0] => store1
[1] =>store2
)
items_array:
Array
(
[electronics]=>led tv
[cosmetics]=>eyeliner
[fruits]=>apple
[vegetables]=>cabbage
)
这是我到目前为止所拥有的:
$new_array = array();
foreach($stores_array as $t) {
$new_array[$t] = $items_array;
}
echo '<pre>';
print_r($new_array);
echo '<pre/>';
这是输出:
Array
(
[store1] => Array
(
[electronics]=>led tv
[cosmetics]=>eyeliner
[fruits]=>apple
[vegetables]=>cabbage
)
[store2] => Array
(
[electronics]=>led tv
[cosmetics]=>eyeliner
[fruits]=>apple
[vegetables]=>cabbage
)
)
这是我想要实现的目标:
我想在每个数组中添加一些其他值
请参阅我打算添加的箭头。
Array
(
[store1] => Array
(
[electronics]=>led tv
[cosmetics]=>eyeliner
[fruits]=>apple
[vegetables]=>cabbage
[store]=>store1 <------- how can i add these?
)
[store2] => Array
(
[electronics]=>led tv
[cosmetics]=>eyeliner
[fruits]=>apple
[vegetables]=>cabbage
[store]=>store2 <------- how can i add these?
)
)
提前感谢你们..
答案 0 :(得分:1)
试试这个:
$new_array = array();
foreach($stores_array as $t) {
$new_array[$t] = $items_array;
$new_array[$t]["store"]=$t;
}
echo '<pre>';
print_r($new_array);
echo '<pre/>';
答案 1 :(得分:0)
foreach (array_keys($my_array) as $key) {
$my_array[$key]['store'] = $key;
}
答案 2 :(得分:0)
如果我理解这个问题,这应该相对容易。试试这个:
$new_array = array();
foreach($stores_array as $t) {
$new_array[$t] = $items_array;
$new_array['store'] = $t;
}
答案 3 :(得分:0)
您只需在数组的末尾添加值。
$new_array = array();
foreach($stores_array as $t) {
$items_array[] = $t;
$new_array[$t] = $items_array;
}
无论如何,如果你只是想以某种方式检索密钥,你不需要将它存储在任何地方,你总是可以使用key($array)
在你的情况下:
foreach($new_array as $data){
echo key($data);
}
您可以在PHP documentation找到有关key
功能的更多信息。
答案 4 :(得分:0)
正如Marc B所说,这是一种冗余数据,但这是我的回答:
$ new_array = array();
foreach($stores_array as $t) {
$new_array[$t] = $items_array;
$new_array[$t]['store'] = $t;
}