Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Array-Lernen: So vergleichen Sie zwei Arrays und ermitteln den Differenzsatz

PHP-Array-Lernen: So vergleichen Sie zwei Arrays und ermitteln den Differenzsatz

青灯夜游
青灯夜游Original
2021-08-04 11:38:434578Durchsuche

Im vorherigen Artikel haben wir die Methode zum Vergleichen von Arrays vorgestellt, um die gleichen Elemente zu erhalten (Schnittpunkt). Wenn Sie interessiert sind, können Sie hier klicken, um → „PHP-Array-Lernen: So vergleichen Sie zwei Arrays, um den Schnittpunkt zu finden“ zu lesen. . Da der Schnittpunkt gefunden werden kann, kann auch der Differenzsatz ermittelt werden. In diesem Artikel werden Ihnen verschiedene Möglichkeiten vorgestellt, Arrays in PHP zu vergleichen, um verschiedene Elemente (Differenzsätze) zu erhalten.

Wie im vorherigen Artikel werfen wir zunächst einen Blick auf die Funktion zum Vergleichen zweier Arrays und zum Ermitteln der Differenzmenge. In diesem Artikel werden hauptsächlich die drei häufig verwendeten Funktionen vorgestellt: array_diff(), array_diff_key(. ), array_diff_assoc(), vergleichen sie Arrays in Bezug auf „Schlüsselwert“, „Schlüsselname“, „Schlüsselwert“ und „Schlüsselname“ und geben ein Differenzarray zurück. Die Differenzelemente stammen aus dem verglichenen Array (das erster Parameter).

Es ist umsonst schwer zu verstehen. Lassen Sie uns anhand von Codebeispielen im Detail sehen, wie array_diff(), array_diff_key() und array_diff_assoc() Arrays vergleichen und Unterschiede finden.

Wir haben die folgenden zwei Arrays:

$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow");

1. Verwenden Sie die Funktion array_diff() – vergleichen Sie die Schlüsselwerte des Arrays

array_diff($arr1,$arr2... )-Funktion Wenn nur die Schlüsselwerte des Arrays verglichen werden, wird ein Differenzarray zurückgegeben. Die Elemente im Differenzarray sind im verglichenen Array $arr1 vorhanden, aber nicht in anderen Parametern Arrays $arr2 ... in.

array_diff($arr1,$arr2...)函数只比较数组的键值,会返回一个差集数组,差集数组中的元素是存在于被比较的数组$arr1中,但不存在于其他参数数组$arr2...中的。

我们来看看上面的示例,$arr1数组和$arr2数组比较,只存在于$arr1数组的键值只有:“blue”,因此输出的结果为:

PHP-Array-Lernen: So vergleichen Sie zwei Arrays und ermitteln den Differenzsatz

2、使用array_diff_key()函数--比较数组的键名

array_diff_key($arr1,$arr2...)函数只比较数组的键名,同样返回一个差集数组,差集数组中的元素是存在于被比较的数组$arr1中,但不存在于其他参数数组$arr2...中的。

而在上面的示例,$arr1数组和$arr2数组中有两个键名不相同,以数组$arr1为准就会得到值“"c"=>"blue"”和“"d"=>"yellow"”,因此输出的结果为:

PHP-Array-Lernen: So vergleichen Sie zwei Arrays und ermitteln den Differenzsatz

3、使用array_diff_assoc()函数--比较数组的键名和键值

array_diff_assoc($arr1,$arr2...)函数会将数组的键名和键值都进行比较,同样返回一个差集数组,差集元素和array_diff()、array_diff_key()一样会从被比较的数组$arr1中获取。

上例中,$arr1数组和$arr2数组进行比较,有三个不相同的元素,然后以数组$arr1为准会得到值“"a"=>"red"”、“"c"=>"blue"”、“"d"=>"yellow"Schauen wir uns das obige Beispiel an. Beim Vergleich des Arrays $arr1 und des Arrays $arr2 lautet der Schlüsselwert, der nur im Array $arr1 vorhanden ist: „blue“, also ist das Ausgabeergebnis:

PHP-Array-Lernen: So vergleichen Sie zwei Arrays und ermitteln den DifferenzsatzPHP-Array-Lernen: So vergleichen Sie zwei Arrays und ermitteln den Differenzsatz

2. Verwenden Sie die Funktion array_diff_key() – vergleichen Sie die Schlüsselnamen des Arraysrrreee

array_diff_key($arr1,$arr2... )Die Funktion vergleicht nur. Der Schlüsselname des Arrays gibt auch ein Differenzarray zurück. Die Elemente im Differenzarray sind im verglichenen Array $arr1 vorhanden, aber nicht in anderen Parameterarrays $arr2.. . in.

Im obigen Beispiel sind die beiden Schlüsselnamen im Array $arr1 und im Array $arr2 unterschiedlich. Das Array ist $arr1 Korrekt erhalten Sie die Werte „“c“=>“blau““ und „“d“=>“gelb““, also das Ausgabeergebnis ist:

PHP-Array-Lernen: So vergleichen Sie zwei Arrays und ermitteln den Differenzsatz🎜 🎜🎜3, verwenden Sie die Funktion array_diff_assoc() – vergleichen Sie die Schlüsselnamen und Schlüsselwerte des Arrays 🎜🎜rrreee🎜array_diff_assoc($arr1,$arr2...) Die Funktion vergleicht die Schlüsselnamen und Schlüsselwerte des Arrays. Es gibt auch ein Differenzarray zurück. Die Differenzelemente werden aus dem verglichenen Array $arr1 erhalten, genau wie array_diff() und array_diff_key(). 🎜🎜Im obigen Beispiel werden das Array $arr1 und das Array $arr2 verglichen. Es gibt drei verschiedene Elemente, und dann wird der Wert „"a"=>"red"", ""c"=>"blue"", ""d"= >"gelb" code>“, also ist das Ausgabeergebnis: 🎜🎜🎜🎜🎜Okay, das ist alles. Wenn Sie noch etwas wissen möchten, können Sie hier klicken. → →🎜php-Video-Tutorial🎜🎜🎜Abschließend empfehle ich ein kostenloses Video-Tutorial zu PHP-Arrays: 🎜PHP-Funktions-Array-Array-Funktions-Video-Erklärung🎜, kommen Sie und lernen Sie! 🎜

Das obige ist der detaillierte Inhalt vonPHP-Array-Lernen: So vergleichen Sie zwei Arrays und ermitteln den Differenzsatz. 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