Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann die Schlüsselwertkorrespondenz nach der Deduplizierung im PHP-Array aufrechterhalten werden?

Wie kann die Schlüsselwertkorrespondenz nach der Deduplizierung im PHP-Array aufrechterhalten werden?

王林
王林Original
2024-04-27 12:33:02614Durchsuche

Die Methoden zum Aufrechterhalten der Schlüssel-Wert-Korrespondenz nach der PHP-Array-Deduplizierung sind: Verwenden Sie die Funktion array_unique(), um doppelte Werte zu entfernen, und verwenden Sie dann die Funktion array_flip(), um Schlüssel-Wert-Paare auszutauschen. Führen Sie das ursprüngliche Array mit dem deduplizierten Array zusammen und verwenden Sie die Array-Zusammenführungsmethode, um die Schlüssel-Wert-Korrespondenz beizubehalten.

PHP 数组去重后如何保持键值对应?

PHP-Array behält die Schlüsselwertkorrespondenz nach der Deduplizierung bei

Einführung

Bei der Verarbeitung von PHP-Arrays müssen wir manchmal doppelte Elemente entfernen und gleichzeitig ihre Schlüsselwertkorrespondenz beibehalten. Dieses Tutorial zeigt Ihnen, wie Sie die Funktion array_unique() in Kombination mit anderen Methoden verwenden, um dieses Ziel zu erreichen. array_unique() 函数并结合其他方法来实现这一目标。

array_unique() 函数

array_unique() 函数可用于从数组中删除重复值。默认情况下,它会对数组中的值进行比较,并保留第一个出现的值的键值对应。

代码示例

$array = ['foo', 'bar', 'baz', 'foo', 'xyz'];

$uniqueArray = array_unique($array);

print_r($uniqueArray);

输出:

Array
(
    [0] => foo
    [1] => bar
    [2] => baz
    [4] => xyz
)

保持键值对应

为了保持数组中元素的键值对应,我们需要使用额外的步骤。一种方法是使用 array_flip()

array_unique()-Funktion

array_unique()-Funktion kann verwendet werden, um doppelte Werte aus einem Array zu entfernen. Standardmäßig werden die Werte im Array verglichen und die Schlüssel-Wert-Korrespondenz des ersten Vorkommens beibehalten.

Codebeispiel

$flippedArray = array_flip($uniqueArray);

print_r($flippedArray);
Ausgabe:
Array
(
    [foo] => 0
    [bar] => 1
    [baz] => 2
    [xyz] => 4
)

Schlüssel-Wert-Korrespondenz pflegen

Um die Schlüssel-Wert-Korrespondenz für Elemente im Array aufrechtzuerhalten, müssen wir einen zusätzlichen Schritt verwenden. Eine Möglichkeit besteht darin, die Funktion array_flip() zu verwenden, die den Schlüssel und den Wert eines Schlüssel-Wert-Paares vertauscht.

Codebeispiel

$newArray = array_merge($array, $uniqueArray);

print_r($newArray);

Ausgabe: 🎜
Array
(
    [0] => foo
    [3] => foo
    [1] => bar
    [4] => baz
    [2] => xyz
)
🎜Jetzt haben wir ein einzigartiges Array, das die Schlüssel-Wert-Korrespondenz aufrechterhält. 🎜🎜🎜Zusammenführungen verwenden 🎜🎜🎜Eine andere Möglichkeit, die Schlüssel-Wert-Korrespondenz aufrechtzuerhalten, ist die Verwendung von Array-Zusammenführungen. Diese Methode erstellt ein neues assoziatives Array unter Verwendung des ursprünglichen Arrays und des deduplizierten Arrays. 🎜🎜🎜Codebeispiel🎜🎜rrreee🎜Ausgabe: 🎜rrreee🎜Diese Methode filtert keine doppelten Werte, behält aber die Schlüssel-Wert-Korrespondenz des ursprünglichen Arrays bei. 🎜

Das obige ist der detaillierte Inhalt vonWie kann die Schlüsselwertkorrespondenz nach der Deduplizierung im PHP-Array aufrechterhalten 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