Heim  >  Artikel  >  Backend-Entwicklung  >  So ermitteln Sie, welche Elemente zweier Arrays in PHP dupliziert werden

So ermitteln Sie, welche Elemente zweier Arrays in PHP dupliziert werden

PHPz
PHPzOriginal
2023-04-18 14:07:00566Durchsuche

In der PHP-Entwicklung ist es eine häufige Anforderung, festzustellen, ob ein Array doppelte Elemente enthält. In diesem Artikel wird erläutert, wie Sie mithilfe von PHP ermitteln können, welche Elemente in zwei Arrays dupliziert werden.

Zuerst müssen wir die Struktur der beiden Arrays verstehen. Ein Array in PHP ist ein geordneter zusammengesetzter Datentyp, der aus einem oder mehreren Schlüssel-Wert-Paaren besteht. Die Schlüssel-Wert-Beziehung kann jede Art von Variable sein, einschließlich Zahlen und Zeichenfolgen.

Hier sind zum Beispiel zwei einfache Arrays:

$array1 = array('apple', 'banana', 'orange', 'grape');
$array2 = array('banana', 'watermelon', 'grape', 'melon');

Als nächstes müssen wir diese beiden Arrays separat durchlaufen und ihre Elemente in einem neuen Array speichern. Um dies zu erreichen, können wir die PHP-Funktion array_intersect verwenden. array_intersect函数来实现这一点。

$common_elements = array_intersect($array1, $array2);

array_intersect函数会返回两个数组的交集,也就是两个数组中都存在的元素。在这个例子中,$common_elements数组将包含'banana'和'grape'这两个元素。

现在,我们已经得到了两个数组中的重复元素。但是,我们可能还需要知道它们在原始数组中的位置。

为了解决这个问题,我们可以使用PHP的array_unique函数来提取数组中唯一的元素,并使用array_diff函数来找出这些唯一元素在原始数组中不存在的元素。这些元素就是我们想要的结果。

$unique_elements = array_unique(array_merge($array1, $array2));
$duplicate_elements = array_diff(array_merge($array1, $array2), $unique_elements);

在这段代码中,我们首先将两个数组合并,并使用array_unique函数过滤出唯一的元素。然后,我们使用array_diff函数找出原始数组和唯一元素数组之间的差异,即重复元素数组。

最后,我们需要将这些数组打印出来,可以使用以下代码:

echo "Array1: ";
print_r($array1);

echo "Array2: ";
print_r($array2);

echo "Common Elements: ";
print_r($common_elements);

echo "Duplicate Elements: ";
print_r($duplicate_elements);

完整的PHP代码如下:

<?php

$array1 = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;, &#39;grape&#39;);
$array2 = array(&#39;banana&#39;, &#39;watermelon&#39;, &#39;grape&#39;, &#39;melon&#39;);

$common_elements = array_intersect($array1, $array2);

$unique_elements = array_unique(array_merge($array1, $array2));
$duplicate_elements = array_diff(array_merge($array1, $array2), $unique_elements);

echo "Array1: ";
print_r($array1);

echo "Array2: ";
print_r($array2);

echo "Common Elements: ";
print_r($common_elements);

echo "Duplicate Elements: ";
print_r($duplicate_elements);

?>

这段代码的输出结果如下:

Array1: Array
(
    [0] => apple
    [1] => banana
    [2] => orange
    [3] => grape
)
Array2: Array
(
    [0] => banana
    [1] => watermelon
    [2] => grape
    [3] => melon
)
Common Elements: Array
(
    [1] => banana
    [3] => grape
)
Duplicate Elements: Array
(
    [0] => banana
    [1] => grape
)

从输出结果可以看出,我们已经成功地找到两个数组中的重复元素。

综上所述,本文介绍了如何使用PHP来判断两个数组中有哪些元素重复。使用PHP内置的array_intersectarray_diff函数,我们可以轻松地实现这个功能。同时,我们还能用array_uniquerrreee

Die Funktion array_intersect gibt den Schnittpunkt zweier Arrays zurück, also die Elemente, die in beiden Arrays vorhanden sind. In diesem Beispiel enthält das Array $common_elements die beiden Elemente „Banane“ und „Grape“. 🎜🎜Jetzt haben wir die doppelten Elemente in beiden Arrays. Möglicherweise müssen wir jedoch auch ihre Position im ursprünglichen Array kennen. 🎜🎜Um dieses Problem zu lösen, können wir die PHP-Funktion array_unique verwenden, um die eindeutigen Elemente im Array zu extrahieren, und die Funktion array_diff verwenden, um herauszufinden, wo sich diese eindeutigen Elemente befinden das ursprüngliche Array Das Element existiert nicht. Diese Elemente sind die Ergebnisse, die wir wollen. 🎜rrreee🎜In diesem Code führen wir zunächst die beiden Arrays zusammen und filtern die eindeutigen Elemente mithilfe der Funktion array_unique heraus. Anschließend verwenden wir die Funktion array_diff, um den Unterschied zwischen dem ursprünglichen Array und dem Array eindeutiger Elemente, d. h. dem Array doppelter Elemente, zu ermitteln. 🎜🎜Abschließend müssen wir diese Arrays ausdrucken. Sie können den folgenden Code verwenden: 🎜rrreee🎜Der vollständige PHP-Code lautet wie folgt: 🎜rrreee🎜Die Ausgabe dieses Codes lautet wie folgt: 🎜rrreee🎜Wie aus ersichtlich ist In der Ausgabe ist es uns gelungen, doppelte Elemente in zwei Arrays zu finden. 🎜🎜Zusammenfassend stellt dieser Artikel vor, wie man mit PHP ermittelt, welche Elemente in zwei Arrays dupliziert werden. Wir können diese Funktion einfach mit den in PHP integrierten Funktionen array_intersect und array_diff implementieren. Gleichzeitig können wir auch die Funktion array_unique verwenden, um das einzige Element im Array zu extrahieren und es mit dem ursprünglichen Array zu vergleichen, um die Position der wiederholten Elemente im ursprünglichen Array zu ermitteln. 🎜

Das obige ist der detaillierte Inhalt vonSo ermitteln Sie, welche Elemente zweier Arrays in PHP dupliziert werden. 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