PHP literal tuşları ile ilişkisel dizi Önlerine?

3 Cevap php

O literal anahtar => değer çiftleri ile ilişkilendirilebilir bir dizi başa eklemek mümkün mü? Ben array_unshift () sayısal tuşları ile çalıştığını biliyorum, ama ben edebi tuşları ile çalışacak bir şey için umut ediyorum.

Örnek olarak ben aşağıdakileri yapmak istiyorum:

$array1 = array('fruit3'=>'apple', 'fruit4'=>'orange');
$array2 = array('fruit1'=>'cherry', 'fruit2'=>'blueberry');

// prepend magic

$resulting_array = ('fruit1'=>'cherry', 
                    'fruit2'=>'blueberry', 
                    'fruit3'=>'apple', 
                    'fruit4'=>'orange');

3 Cevap

Sadece yapamazsınız:

$resulting_array = $array2 + $array1;

?

Sizin durumunuzda, sen array_merge () kullanmak istiyorsanız:

array_merge(array('fruit1'=>'cherry', 'fruit2'=>'blueberry'), array('fruit3'=>'apple', 'fruit4'=>'orange'));

Yerine array_unshift of (), yine array_merge kullanmak, bir ilişkisel dizi için, tek bir değer prepend ():

array_merge(array($key => $value), $myarray);

@ Cletus üzerinde bir noktadır. Sadece eklemek için giriş diziler elemanların sipariş belirsiz, ve sıralanması için son dizi gerekiyorsa, sen isteyebilirsiniz ksort:

$resulting_array = $array1 + $array2;
ksort($resulting_array);