Maison  >  Article  >  développement back-end  >  Comment fusionner des tableaux en utilisant php et conserver les valeurs clés

Comment fusionner des tableaux en utilisant php et conserver les valeurs clés

jacklove
jackloveoriginal
2018-06-08 16:59:561754parcourir

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 Fusionner les cellules d'un ou plusieurs tableaux, en ajoutant les valeurs dans un tableau le tableau résultant après le tableau précédent.

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 des noms de clés numériques, les mêmes noms de clés ne seront pas écrasés et les noms de clés seront réindexés

<?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);?>

Résultat :

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


En raison des besoins professionnels, il est nécessaire de fusionner les réponses aux deux parties des questions à choix multiples dans le questionnaire Les réponses à. chaque partie est constituée de tableaux (clé => valeur), et la clé est le numéro de 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 fusionner car la question La clé est un nombre, donc le nom de la clé sera réindexé, ce qui entraînera la non-conservation du numéro de la question.

Méthode pour fusionner des tableaux et conserver les valeurs clés :

<?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 des tableaux afin de conserver les valeurs clés du tableau. Si le tableau fusionné contient la même valeur clé, cette dernière n'écrasera pas la précédente. valeur clé (la précédente) priorité).

Cet article explique comment utiliser PHP pour fusionner des tableaux et conserver les valeurs clés. Pour plus de contenu connexe, veuillez prêter attention au site Web chinois de PHP.

Recommandations associées :

Comment utiliser phpcurl pour implémenter le téléchargement multi-processus de classes de fichiers

Comment déterminer le local et des fichiers distants via php. Y a-t-il une

explication sur la méthode de conversion des lignes et des colonnes des données de la table MySQL

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