Heim  >  Artikel  >  Backend-Entwicklung  >  Wie füge ich PHP-Arrays mit passenden Schlüsseln zusammen und kombiniere ihre Werte?

Wie füge ich PHP-Arrays mit passenden Schlüsseln zusammen und kombiniere ihre Werte?

DDD
DDDOriginal
2024-11-01 08:28:30289Durchsuche

How to merge PHP arrays with matching keys and combine their values?

PHP-Array: Arrays mit passenden Schlüsseln zusammenführen

In PHP gibt es Fälle, in denen wir mehrere Arrays zusammenführen müssen, um sicherzustellen, dass Elemente mit die gleiche Taste werden kombiniert. Stellen Sie sich das folgende Szenario vor:

Problem:

Wir haben zwei Arrays mit übereinstimmenden Schlüsseln und möchten sie zusammenführen, wie zum Beispiel:

<code class="php">$array1 = [
    ['Camera1' => '192.168.101.71'],
    ['Camera2' => '192.168.101.72'],
    ['Camera3' => '192.168.101.74']
];

$array2 = [
    ['Camera1' => 'VT'],
    ['Camera2' => 'UB'],
    ['Camera3' => 'FX']
];</code>

Lösung:

Um diese Arrays unter Beibehaltung der Schlüssel-Wert-Beziehung zusammenzuführen, können wir verwenden array_map in Verbindung mit array_keys, um sie zu manipulieren und zu kombinieren:

<code class="php">$results = array();

array_map(function($a, $b) use (&$results) {

    $key1 = current(array_keys($a));
    $a[$key1] = ['ip' => $a[$key1]];

    $key2 = current(array_keys($b));
    $b[$key2] = ['name' => $b[$key2]];

    $results = array_merge_recursive($a, $b);

}, $array1, $array2);</code>

Diese Lösung funktioniert, indem sie jedes Element in beiden Arrays durchläuft, den entsprechenden Schlüssel extrahiert und die Werte umbenennt, um sicherzustellen, dass sie mit array_merge_recursive zusammengeführt werden können. Das Ergebnis ist ein Array, in dem jeder Schlüssel ein zusammengeführtes Ergebnis hat, wie unten gezeigt:

<code class="php">array (
  'Camera1' => array (
    'ip' => '192.168.101.71',
    'name' => 'VT'
  ),
  'Camera2' => array (
    'ip' => '192.168.101.72',
    'name' => 'UB'
  ),
  'Camera3' => array (
    'ip' => '192.168.101.74',
    'name' => 'FX'
  )
)</code>

Das obige ist der detaillierte Inhalt vonWie füge ich PHP-Arrays mit passenden Schlüsseln zusammen und kombiniere ihre Werte?. 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