2013-03-20 5 views
0

J'ai deux tableaux,tableau de fusion pour les valeurs numériques

Array 1(
    'A' => string '13' (length=2) 
    'B' => string '13' (length=2) 
) 

Array 2(
    9 => string '13' (length=2) 
) 

Mais quand j'utilise array_merge de combiner ces arrays, il me montre comme ce

Array(
    'A' => string '13' (length=2) 
    'B' => string '13' (length=2) 
    0 => string '13' (length=2) 
) 

A chaque fois quand il y a une valeur numérique, en array_merge il incrémente automatiquement, ne prenant pas la valeur d'origine.

+0

Selon les docs: http://php.net/array_merge '... seront renumérotés avec incrémentées à partir de zéro dans le résultat array.' –

Répondre

6
<?php 
$a = array('A' => 13, 'B' => 13); 
$b = array('9' => 13); 

print_r($a+$b); 
?> 
+1

1+. Belle réponse propre. –

+0

@praveen ... Merci pour une idée sympa ... belle et droite réponse .... – Dev

+0

@dev si c'est correct alors vous devriez l'accepter –

0

array_merge() fera la réindexation sur les index numériques .. Vous vous voulez juste ajouter un tableau à l'autre sans et réindexation ou traînant utilisation « + », puis ... comme indiqué ci-dessous

<?php 
$array1 = array('a'=>'13','b'=>'14'); 
$array2 = array(9=>'13'); 
$merged_array = $array1+$array2; 
print_r($merged_array); 
?> 

lien Documentation http://php.net/manual/en/function.array-merge.php

Questions connexes