Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte grafische Erläuterung des zweidimensionalen PHP-Array-Deduplizierungsalgorithmus

Detaillierte grafische Erläuterung des zweidimensionalen PHP-Array-Deduplizierungsalgorithmus

墨辰丷
墨辰丷Original
2018-05-29 14:50:051586Durchsuche

Der in diesem Artikel mit Ihnen geteilte Code ist ein Algorithmus zum Zusammenführen und Deduplizieren zweidimensionaler Arrays basierend auf Schlüsselwerten, der in PHP implementiert ist. Er ist sehr praktisch.

Anforderungen

Jetzt haben wir den folgenden Satz zweidimensionaler Arrays:


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"
 }
}


muss sich im zweidimensionalen Schlüssel befinden. Benannter Name, die Werte der Arrays mit demselben Wert werden zu einem neuen Array zusammengeführt.

Zum Beispiel sollten die beiden zweidimensionalen Arrays mit dem Namen „fields_510“ im obigen Code zu einem Array mit den Werten „Football“ und „Baseball“ zusammengeführt werden.

Denken

Wenn es um Arrays geht, denken wir in PHP zuerst an Schleifen, daher ist es hier offensichtlich besser für die Schleifenverarbeitung geeignet ähnelt der Blasensortierung, eins nach dem anderen, die beste Verarbeitung.

Code

Der Code lautet wie folgt:


$public_info = 数组;
for ($i=0;$i<count($public_info);$i++) {
  for ($j=$i+1;$j<count($public_info);$j++) {
    if ($public_info[$j][&#39;name&#39;] == $public_info[$i][&#39;name&#39;]) {
      $public_info[$i][&#39;value&#39;] .= &#39;,&#39; . $public_info[$j][&#39;value&#39;];
      unset($public_info[$j]);
    }
  }
}


Ausführungsergebnisse:


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"
 }
}


Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein .


Verwandte Empfehlungen:

Detaillierte Erklärung, wie PHP Zeichenfolgen in Ganzzahlen umwandelt, ohne integrierte Funktionen zu verwenden

PHP implementiert die Methode zur Beurteilung, ob es sich um eine kontinuierliche Multiplikation einer Zahlenfolge handelt

ThinkPHP implementiert die Anmelde- und Exit-Funktion

Das obige ist der detaillierte Inhalt vonDetaillierte grafische Erläuterung des zweidimensionalen PHP-Array-Deduplizierungsalgorithmus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn