Maison > développement back-end > tutoriel php > Exemple détaillé de la différence entre la fusion de tableaux php utilisant l'opérateur + et la fonction de tableau array_merge

Exemple détaillé de la différence entre la fusion de tableaux php utilisant l'opérateur + et la fonction de tableau array_merge

伊谢尔伦
Libérer: 2023-03-10 22:04:01
original
1507 Les gens l'ont consulté

PHP fusionne tableaux généralement de deux manières, l'une consiste à ajouter directement à l'aide du signe plus, l'autre consiste à utiliser la fonction array_merge pour effectuer la De plus, array_merge() fusionne les cellules de deux tableaux ou plus et les valeurs d'un tableau sont ajoutées au tableau précédent. Renvoie le tableau résultant. S'il y a la même chaîne nom de clé dans le tableau d'entrée, la valeur après le nom de clé écrasera la valeur précédente. Cependant, si le tableau contient des clés numériques, les valeurs suivantes n'écraseront pas les valeurs d'origine mais leur seront ajoutées.

Il y a une légère différence entre les deux :

Lorsque le nom de la clé du tableau est un nom de clé numérique, les deux tableaux à fusionner avoir des nombres avec le même nom. Lors de l'utilisation de KEY, l'utilisation de array_merge() n'écrasera pas la valeur d'origine, mais l'utilisation de "+" pour fusionner des tableaux renverra la première valeur comme résultat final et "éliminera" ces valeurs dans le fichier. tableaux suivants qui ont le même nom de clé. "Off (remarque : ne pas écraser mais conserver la valeur qui apparaît en premier). Lorsque le même nom de clé de tableau est un caractère, l'opérateur "+" est le même que lorsque le nom de clé est un nombre, mais array_merge() écrasera la valeur précédente du même nom de clé.

Instance :

<?php
$array1 = array(1=>&#39;0&#39;); 
$array2 = array(1=> "data"); 
$result1 = $array2 + $array1;/*结果为$array2的值*/ 
print_r($result); 
$result = $array1 + $array2 ;/*结果为$array1的值*/ 
print_r($result); 
$result3 = array_merge($array2,$array1);/*结果为$array2和$array1的值,键名被重新分配*/ 
print_r($result3); 
$result4 = array_merge($array1,$array2);/*结果为$array1和$array2的值,键名被重新分配*/ 
print_r($result4); 
?>
Copier après la connexion

Résultat de sortie :

Array 
( 
[1] => data 
) 
Array 
( 
[1] => 0 
) 
Array 
( 
[0] => data 
[1] => 0 
) 
Array 
( 
[0] => 0 
[1] => data 
)
Copier après la connexion

Code :

<?php
$array1 = array(&#39;asd&#39;=>&#39;0&#39;); 
$array2 = array(&#39;asd&#39; => "data"); 
$result1 = $array2 + $array1;/*结果为$array2的值*/ 
print_r($result); 
$result = $array1 + $array2 ;/*结果为$array1的值*/ 
print_r($result); 
$result3 = array_merge($array2,$array1);/*结果为$array1*/ 
print_r($result3); 
$result4 = array_merge($array1,$array2);/*结果为$array2*/ 
print_r($result4);
?>
Copier après la connexion

Résultat de sortie :

Array 
( 
[asd] => data 
) 
Array 
( 
[asd] => 0 
) 
Array 
( 
[asd] => 0 
) 
Array 
( 
[asd] => data 
)
Copier après la connexion

1. L'ajout prouvera que l'index naturel dans le tableau n'est pas réinitialisé
2. pas réinitialisé. Sera écrasé
3. L'index naturel dans la fonction de fusion sera réinitialisé
4. La fonction de fusion n'a pas d'importance dans la relation entre la fusion et la fusion. La valeur des paramètres du tableau ultérieurs sera la même. comme celle des paramètres de tableau précédents. La valeur de la clé

.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal