通过保留另一个数组对数组值的键进行排序

时间:2011-02-13 14:34:07

标签: php arrays array-merge

我需要比较另一个数组中的数组值。我做过的事情,但我不知道如何保存钥匙。

$razeni=Array(0=>1,1=>2,2=>0,3=>3);
$myservices=Array(0=>"text0", 1=>"text1", 2=>"text2", 3=>"text3", 4=>"text4", 5=>"text5", 6=>"text6", 7=>"text7");

现在比较

foreach ($razeni as $key=>$value) {
  $myservices_[$value] = $myservices[$value];
  unset($myservices[$value]);    
}

if (isset($myservices_))
{
  $myservices = array_merge($myservices_, $myservices);
}

和结果:

Array
(
    [0] => text1
    [1] => text2
    [2] => text0
    [3] => text3
    [4] => text4
    [5] => text5
    [6] => text6
    [7] => text7
)

但我需要这个结果

Array
(
    [1] => text1
    [2] => text2
    [0] => text0
    [3] => text3
    [4] => text4
    [5] => text5
    [6] => text6
    [7] => text7
)

1 个答案:

答案 0 :(得分:1)

而不是使用array_merge use

$myservices = $myservices_ + $myservices;
  

如果要追加数组元素   从第二个数组到第一个数组   数组虽然没有覆盖   第一个数组中的元素而不是   重新索引,使用+数组联合   操作