Assoziative Arrays zusammenführen und fehlende Spalten mit Standardwerten hinzufügen
Mehrere assoziative Arrays unter Beibehaltung aller eindeutigen Schlüssel zusammenführen und fehlende Spalten mit Standardwerten hinzufügen kann mit verschiedenen Techniken erreicht werden. Lassen Sie uns zwei Methoden untersuchen, um dies zu erreichen:
Methode 1: Verwenden von array_merge und RecursiveIterationIterator
<code class="php">$a = array('a' => 'some value', 'b' => 'some value', 'c' => 'some value'); $b = array('a' => 'another value', 'd' => 'another value', 'e' => 'another value', 'f' => 'another value'); $c = array('b' => 'some more value', 'x' => 'some more value', 'y' => 'some more value', 'z' => 'some more value'); $d = array($a, $b, $c); $keys = array(); foreach (new RecursiveIteratorIterator(new RecursiveArrayIterator($d)) as $key => $val) { $keys[$key] = ''; } $data = array(); foreach ($d as $values) { $data[] = array_merge($keys, $values); } echo '<pre class="brush:php;toolbar:false">'; print_r($data);</code>
Dieser Ansatz verwendet zunächst RecursiveIteratorIterator in Verbindung mit array_merge, um alle eindeutigen Schlüssel zu identifizieren in jedem assoziativen Array. Anschließend wird ein leeres Array ($keys) mit den identifizierten Schlüsseln initialisiert. Anschließend durchläuft es jedes Array in $d und führt das Array $keys mit den Werten jedes Arrays zusammen, um das gewünschte Format zu erhalten.
Methode 2: Verwenden von array_combine und array_map
<code class="php">$keys = array_keys(call_user_func_array('array_merge', $d)); $key_pair = array_combine($keys, array_fill(0, count($keys), null)); $values = array_map(function ($e) use ($key_pair) { return array_merge($key_pair, $e); }, $d);</code>
Dieser Ansatz verwendet array_keys, um die Vereinigung aller eindeutigen Schlüssel im zusammengeführten Array zu bestimmen. Anschließend wird array_combine verwendet, um ein Schlüssel-Wert-Paar zu erstellen, bei dem die Schlüssel die eindeutigen Schlüssel sind und die Werte Null sind. Schließlich wird array_map verwendet, um $d zu durchlaufen und das Schlüssel-Wert-Paar ($key_pair) mit jedem assoziativen Array in $d zusammenzuführen, was zum gewünschten Format führt.
Das obige ist der detaillierte Inhalt vonWelche Techniken kann ich verwenden, um assoziative Arrays zusammenzuführen und fehlende Spalten mit Standardwerten hinzuzufügen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!