【问题标题】:Associative array - move an element to first position [duplicate]关联数组 - 将元素移动到第一个位置
【发布时间】:2012-10-02 18:46:22
【问题描述】:

可能重复:
PHP - add item to beginning of associative array

有关联数组:

$myarray=array("key1"=>"value1","key2"=>"value2");

需要向数组中添加一个新元素:

$myarray["keynew"]="valuenew";

所以现在 $myarray 是:

Array ( [key1] => value1 [key2] => value2 [keynew] => valuenew ) 

如何将新添加的元素(“keynew”=>“valuenew”)移动到数组的第一个位置?

我有一个解决方法,但我不喜欢它。

$myarray=array("key1"=>"value1","key2"=>"value2");
$myarray["keynew"]="-valuenew";
asort($myarray);
$myarray["keynew"]="valuenew";
//$myarray=Array ( [keynew] => valuenew [key1] => value1 [key2] => value2 ) 

谢谢。

【问题讨论】:

    标签: php


    【解决方案1】:

    尝试以下方法:

    <?php
    $myArray  = array('key1' => 'value1', 'key2' => 'value2');
    $myArray2 = array('keynew' => 'valuenew');
    var_dump($myArray2 + $myArray);
    

    输出:

    % php test.php 
    array(3) {
      ["keynew"]=>
      string(8) "valuenew"
      ["key1"]=>
      string(6) "value1"
      ["key2"]=>
      string(6) "value2"
    }
    

    【讨论】:

      【解决方案2】:

      您可以尝试使用array_merge() 函数 - 它在保留顺序的同时合并数组。

      <?php
      $myarray = array_merge(array('keynew' => '-valuenew'), $myarray);
      

      【讨论】:

        【解决方案3】:

        你有没有研究过array_merge?我认为这会对您有所帮助:http://php.net/manual/en/function.array-merge.php

        【讨论】:

          猜你喜欢
          • 2018-10-15
          • 2011-07-15
          • 2023-03-29
          • 1970-01-01
          • 2011-03-31
          • 2017-11-04
          • 2021-02-25
          • 2017-10-19
          • 2022-08-17
          相关资源
          最近更新 更多