Heim  >  Artikel  >  tägliche Programmierung  >  So vergleichen Sie zwei mehrdimensionale PHP-Arrays

So vergleichen Sie zwei mehrdimensionale PHP-Arrays

藏色散人
藏色散人Original
2019-01-16 15:28:5014995Durchsuche


Bestimmen Sie, ob zwei mehrdimensionale Arrays gleich sind oder welche Elemente unterschiedlich sind. Wir können einen Vergleich durch die Funktion array_udiff(), die Methode create_function(), strcmp() und andere Funktionen in PHP erreichen.

So vergleichen Sie zwei mehrdimensionale PHP-Arrays

Im Folgenden stellen wir die Methode zum Vergleich zweier zweidimensionaler Arrays anhand spezifischer Codebeispiele vor.

Das Codebeispiel lautet wie folgt:

<?php

//多维数组比较
$color1 = array(array(&#39;Red&#39;,80),array(&#39;Green&#39;,70),array(&#39;white&#39;,60));
$color2 = array(array(&#39;Green&#39;,70),array(&#39;Black&#39;,95));

$color = array_udiff($color1,$color2,create_function(
&#39;$a,$b&#39;,&#39;return strcmp(implode("",$a),implode("",$b));&#39;)
);

echo "<pre class="brush:php;toolbar:false">";

print_r($color);

In diesem Code können wir die verschiedenen Array-Elemente des Arrays $color1 im Vergleich zum Array $color2 herausfinden.

Die Ergebnisse des Ausgabevergleichs lauten wie folgt:

So vergleichen Sie zwei mehrdimensionale PHP-Arrays

Funktionseinführung:

1. array_udiff: Verwenden Sie die Rückruffunktion, um Daten zu vergleichen und den Differenzsatz des Arrays zu berechnen.

array_udiff ( array $array1 , array $array2 [, array $... ], callable $value_compare_func ) : array

Verwenden Sie die Rückruffunktion, um die Daten zu vergleichen und die Differenz zu berechnen im Array. Im Gegensatz zu array_diff() verwendet ersteres integrierte Funktionen für den Datenvergleich.

Der Parameter array1 repräsentiert das erste Array. array2 zweites Array. value_compare_func Callback-Vergleichsfunktion.

Wenn das erste Argument kleiner, gleich oder größer als das zweite Argument ist, muss die Vergleichsfunktion entsprechend eine Ganzzahl kleiner, gleich oder größer als 0 zurückgeben.

Callback ( Mixed $a, Mixed $b ): int

Rückgabewert, gibt alle Werte in Array1 zurück, die nicht in anderen Parametern vorkommen.

2, create_function: Anonyme Funktion erstellen

create_function ( string $args , string $code ): string

Anonyme Funktion basierend auf den übergebenen Parametern erstellen und angeben Es gibt einen eindeutigen Namen zurück.

Normalerweise werden diese Parameter als durch einfache Anführungszeichen getrennte Zeichenfolgen übergeben. Der Grund für die Verwendung von Zeichenfolgen in einfachen Anführungszeichen besteht darin, den Variablennamen vor dem Parsen zu schützen, der sonst bei Verwendung von doppelten Anführungszeichen maskiert werden müsste, z. B. $avar.

args repräsentiert Funktionsparameter. Code stellt Funktionscode dar.

Der Rückgabewert ist ein eindeutiger Funktionsname in Form einer Zeichenfolge oder eines FALSE-Fehlers.

3. strcmp: Binärer sicherer String-Vergleich

strcmp ( string $str1 , string $str2 ) : int

Beachten Sie, dass bei diesem Vergleich die Groß-/Kleinschreibung beachtet wird.

Der Parameter str1 repräsentiert die erste Zeichenfolge. str2 repräsentiert die zweite Zeichenfolge.

Der Rückgabewert lautet: Wenn str1 kleiner als str2 ist, wird

4. implodieren: Konvertieren Sie den Wert eines eindimensionalen Arrays in einen String

Dieser Artikel ist eine Einführung in die Methode zum Vergleichen zweier mehrdimensionaler PHP-Arrays . Es ist auch sehr nützlich und leicht zu verstehen, ich hoffe, es wird Freunden in Not helfen!


Das obige ist der detaillierte Inhalt vonSo vergleichen Sie zwei mehrdimensionale PHP-Arrays. 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