【问题标题】:Sorting keys of array values by preserving another array通过保留另一个数组对数组值的键进行排序
【发布时间】:2011-02-13 14:34:07
【问题描述】:

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

$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
)

【问题讨论】:

    标签: php arrays array-merge


    【解决方案1】:

    而不是使用array_merge use

    $myservices = $myservices_ + $myservices;
    

    如果你想追加数组元素 从第二个数组到第一个 数组而不覆盖 来自第一个数组的元素,而不是 重新索引,使用 + 数组联合 运算符。

    【讨论】:

      猜你喜欢
      • 2013-03-23
      • 1970-01-01
      • 2017-08-20
      • 2011-02-10
      • 2017-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多