好的,我有一个像这样的阵列,但不能保证按顺序排列......
$array = array(
'sadness' => array(
'info' => 'some info',
'info2' => 'more info',
'value' => 'value',
),
'happiness' => array(
'info' => 'some info',
'info2' => 'more info',
'value' => 'the value',
),
'peace' => array(
'info' => 'some info',
'info2' => 'more info',
'value' => 'the value',
)
);
好的,我想在定义幸福键后立即投入此数组。我不能使用“和平”的关键,因为它必须在幸福之后直接进行,并且随着这个阵列的变化,和平可能不会幸福。
所以这就是我在幸福之后需要添加的内容......
$another_array['love'] = array(
'info' => 'some info',
'info2' => 'more info',
'value' => 'the value of love'
);
所以在幸福之后直接输入后的最终输出应该是这样的:
$array = array(
'sadness' => array(
'info' => 'some info',
'info2' => 'more info',
'value' => 'value',
),
'happiness' => array(
'info' => 'some info',
'info2' => 'more info',
'value' => 'the value',
),
'love' => array(
'info' => 'some info',
'info2' => 'more info',
'value' => 'the value of love',
),
'peace' => array(
'info' => 'some info',
'info2' => 'more info',
'value' => 'the value',
)
);
有人可以帮我一把。使用array_shift,array_pop或array_merge对我没有任何帮助,因为它们位于数组的开头和结尾。我需要将它直接放在$ array中的KEY位置之后。
谢谢:)
答案 0 :(得分:2)
您正在尝试使用两个相同的键'love'
创建一个数组。这是不可能的。
编辑:
你可以这样做:
$new_array = array();
foreach($array as $k => $v) {
$new_array[$k] = $v;
if($k == 'happiness') {
$new_array['love'] = $another_array['love'];
}
}
答案 1 :(得分:0)
在我看来,你不明白在PHP中所有数组都是哈希(关联数组)。所以订单不会受到影响。如果您需要具有特定订单,则需要使用排序等来定义特定订单或使用简单数组
$order = array ('love', 'happiness', 'pease');
使用$ order数组访问$ array。在$ order数组中,键是1,2,3 ......