Maison  >  Article  >  développement back-end  >  Comment fusionner des tableaux PHP sans écraser

Comment fusionner des tableaux PHP sans écraser

藏色散人
藏色散人original
2021-06-11 10:18:003473parcourir

Comment combiner des tableaux PHP sans écraser : créez d'abord un exemple de fichier PHP ; puis utilisez la méthode "array_merge($arr1, $arr2);" pour fusionner deux tableaux sans écraser le même nom de clé.

Comment fusionner des tableaux PHP sans écraser

L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3

Comment fusionner des tableaux PHP sans les écraser ?Méthode php pour fusionner des tableaux et conserver les valeurs clés

php fusionne les tableaux, généralement en utilisant la méthode array_merge.

array_merge — Fusionner un ou plusieurs tableaux

array array_merge ( array $array1 [, array $... ] )

array_merge Fusionne les cellules d'un ou plusieurs tableaux. Les valeurs d'un tableau sont ajoutées au tableau précédent et renvoyées comme résultat. .

Si le tableau d'entrée a le même nom de clé de chaîne, la valeur après le nom de clé écrasera la valeur précédente. Cependant, si le tableau contient des clés numériques, ces dernières n'écraseront pas la valeur d'origine, mais y seront ajoutées.

Si seul un tableau est donné et que le tableau est indexé numériquement, les noms de clés sont réindexés de manière contiguë.

Exemple 1, le tableau utilise des noms de clés de chaîne, le même nom de clé sera écrasé par le dernier

<?php
$arr1 = array(&#39;name&#39;=>&#39;fdipzone&#39;);
$arr2 = array(&#39;name&#39;=>&#39;terry&#39;);
$result = array_merge($arr1, $arr2);
print_r($result);
?>

Sortie :

Array
(
    [name] => terry
)

Exemple 2, le tableau utilise une clé numérique noms, le même nom de clé ne sera pas écrasé et le nom de clé sera réindexé

<?php
$arr1 = array(0=>&#39;fdipzone&#39;,1=>&#39;terry&#39;);
$arr2 = array(0=>&#39;php&#39;,1=>&#39;python&#39;);
$result = array_merge($arr1, $arr2);
print_r($result);
?>

Sortie :

Array
(
    [0] => fdipzone
    [1] => terry
    [2] => php
    [3] => python
)

En raison des besoins professionnels, il est nécessaire de fusionner les réponses au deux parties des questions à choix multiples du questionnaire, et les réponses à chaque partie. Il s'agit d'un tableau (clé => valeur), la clé est le numéro de la question, la valeur est la réponse et il n'y a pas de duplication des numéros de question dans les deux parties.

Utilisez array_merge pour fusionner les deux parties de la réponse

<?php
$form_data1 = array(11=>&#39;A&#39;,12=>&#39;B&#39;,13=>&#39;C&#39;,14=>&#39;D&#39;);
$form_data2 = array(25=>&#39;B&#39;,26=>&#39;A&#39;,27=>&#39;D&#39;,28=>&#39;C&#39;);
$result = array_merge($form_data1, $form_data2);
print_r($result);
?>

Sortie :

Array
(
    [0] => A
    [1] => B
    [2] => C
    [3] => D
    [4] => B
    [5] => A
    [6] => D
    [7] => C
)

Utilisez array_merge pour fusionner Parce que le numéro de question (clé) est un nombre, la clé. le nom sera réindexé, ce qui entraînera la question Le numéro ne peut pas être réservé.

Méthode de fusion de tableaux et de conservation des valeurs de clé :

<?php
$form_data1 = array(11=>&#39;A&#39;,12=>&#39;B&#39;,13=>&#39;C&#39;,14=>&#39;D&#39;);
$form_data2 = array(25=>&#39;B&#39;,26=>&#39;A&#39;,27=>&#39;D&#39;,28=>&#39;C&#39;);
$result = $form_data1 + $form_data2;
print_r($result);
?>

Sortie :

Array
(
    [11] => A
    [12] => B
    [13] => C
    [14] => D
    [25] => B
    [26] => A
    [27] => D
    [28] => C
)

Utilisez l'opérateur "+" pour fusionner les tableaux et conserver la clé valeurs des tableaux Valeur clé, si le tableau fusionné contient la même valeur clé, la valeur clé la plus récente n'écrasera pas la valeur clé précédente (la première est prioritaire).

Apprentissage recommandé : "Tutoriel vidéo PHP"

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!

Déclaration:
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