1

重複の可能性:
PHP - 連想配列の先頭に項目を追加

連想配列を持つ:

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

ありがとうございました。

4

3 に答える 3

3

次のことを試してください。

<?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"
}
于 2012-10-02T18:52:53.573 に答える
1

関数を使用してみることができarray_merge()ます-順序を維持しながら配列をマージします。

<?php
$myarray = array_merge(array('keynew' => '-valuenew'), $myarray);
于 2012-10-02T18:52:14.597 に答える
0

array_merge はもう調べましたか? それはあなたを助けると思います:http://php.net/manual/en/function.array-merge.php

于 2012-10-02T18:50:06.060 に答える