Maison >développement back-end >tutoriel php >Algorithme de déduplication de tableau bidimensionnel PHP
Exigences
Il existe maintenant l'ensemble de tableaux bidimensionnels suivant :
array(8) { [0]=> array(2) { ["name"]=> string(4) "name" ["value"]=> string(6) "青叶" } [1]=> array(2) { ["name"]=> string(5) "phone" ["value"]=> string(11) "13812341234" } [2]=> array(2) { ["name"]=> string(12) "fileds_507[]" ["value"]=> string(12) "我是青叶" } [3]=> array(2) { ["name"]=> string(12) "fileds_508[]" ["value"]=> string(6) "合肥" } [4]=> array(2) { ["name"]=> string(12) "fileds_509[]" ["value"]=> string(3) "男" } [5]=> array(2) { ["name"]=> string(12) "fileds_510[]" ["value"]=> string(6) "足球" } [6]=> array(2) { ["name"]=> string(12) "fileds_510[]" ["value"]=> string(6) "棒球" } [7]=> array(2) { ["name"]=> string(12) "fileds_511[]" ["value"]=> string(16) "2016-12-15T11:15" } }
Il est nécessaire de fusionner les valeurs des tableaux avec le même nom de clé et la même valeur dans la deuxième dimension, forment un nouveau tableau.
Par exemple, les deux tableaux bidimensionnels nommés field_510 dans le code ci-dessus doivent être fusionnés en un tableau avec les valeursde football et de baseball.
Réflexion
Quand il s'agit de tableaux, nous pensons d'abord aux boucles en PHP, il est donc évidemment plus approprié d'utiliser ici le traitement des boucles, qui est similaire au tri à bulles. Comparez un par un, et enfin Facile à manipuler.
Code
Le code est le suivant :
$public_info = 数组; for ($i=0;$i<count($public_info);$i++) { for ($j=$i+1;$j<count($public_info);$j++) { if ($public_info[$j]['name'] == $public_info[$i]['name']) { $public_info[$i]['value'] .= ',' . $public_info[$j]['value']; unset($public_info[$j]); } } }
Résultats de l'exécution :
array(7) { [0]=> array(2) { ["name"]=> string(4) "name" ["value"]=> string(6) "青叶" } [1]=> array(2) { ["name"]=> string(5) "phone" ["value"]=> string(11) "13812341234" } [2]=> array(2) { ["name"]=> string(12) "fileds_507[]" ["value"]=> string(12) "我是青叶" } [3]=> array(2) { ["name"]=> string(12) "fileds_508[]" ["value"]=> string(6) "合肥" } [4]=> array(2) { ["name"]=> string(12) "fileds_509[]" ["value"]=> string(3) "男" } [5]=> array(2) { ["name"]=> string(12) "fileds_510[]" ["value"]=> string(13) "足球,棒球" } [7]=> array(2) { ["name"]=> string(12) "fileds_511[]" ["value"]=> string(16) "2016-12-15T11:15" } }
Résumé
Les exigences sont remplies.Tant que nous rencontrons un tableau, la première chose à laquelle nous pensons en plus des méthodes PHP prêtes à l'emploi est la boucle, que ce soit foreach ou for. montage que j'ai traité dans mon projet, j'espère que cela me sera utile.
Pour plus d'articles liés à l'algorithme de déduplication de tableaux bidimensionnels PHP, veuillez faire attention au site Web PHP chinois !