Aktueller Standort: Startseite> Neueste Artikel> [Wie fusioniere ich mehrere Arrays mit Array_Replace? Detaillierte Erklärung der praktischen Fähigkeiten von PHP

[Wie fusioniere ich mehrere Arrays mit Array_Replace? Detaillierte Erklärung der praktischen Fähigkeiten von PHP

gitbox 2025-09-10

Wie fusioniere ich mehrere Arrays mit Array_Replace ? Detaillierte Erklärung der praktischen Fähigkeiten von PHP

Bei der PHP -Programmierung sind Array -Operationen sehr häufige Aufgaben. Normalerweise müssen wir Arrays zusammenführen, Elemente in Arrays ersetzen oder Elemente mehrerer Arrays zusammenführen. Zu diesem Zeitpunkt ist die Funktion array_replace () ein sehr nützliches Werkzeug. Es ersetzt nicht nur die Werte im Array, sondern kombiniert auch mehrere Zahlen.

In diesem Artikel wird die Verwendung der Funktion array_replace () ausführlich vorgestellt, damit Sie besser verstehen können, wie Sie mehrere Arrays in PHP zusammenführen können.

Was ist Array_Replace ?

Array_Replace () ist eine PHP-integrierte Funktion, die Elemente aus einem oder mehreren Arrays in das erste Array kombiniert. Wenn im Array derselbe Schlüssel vorhanden ist, ersetzen die Werte im nachfolgenden Array die Werte derselben Taste im ersten Array. Mit anderen Worten, es ersetzt die Elemente im vorherigen Array durch die Elemente im nachfolgenden Array nacheinander.

Funktionssyntax

 <span><span><span class="hljs-title function_ invoke__">array_replace</span></span><span>(</span><span><span class="hljs-keyword">array</span></span><span> </span><span><span class="hljs-variable">$array1</span></span><span>, </span><span><span class="hljs-keyword">array</span></span><span> ...</span><span><span class="hljs-variable">$arrays</span></span><span>): </span><span><span class="hljs-keyword">array</span></span><span>
</span></span>
  • $ array1 : Das erste Array, wie das Ziel -Array, wird durch Elemente anderer Arrays ersetzt.

  • $ arrays : Ein oder mehrere Arrays, deren Werte die Werte des entsprechenden Schlüssels in $ Array1 ersetzen.

Beispiel

Grundlegende Beispiele

Angenommen, wir haben zwei Arrays und wollen die Werte des zweiten Arrays in das erste Array zusammenführen:

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$array1</span></span><span> = [</span><span><span class="hljs-string">"a"</span></span><span> =&gt; </span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">2</span></span><span>];
</span><span><span class="hljs-variable">$array2</span></span><span> = [</span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-number">4</span></span><span>];

</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_replace</span></span><span>(</span><span><span class="hljs-variable">$array1</span></span><span>, </span><span><span class="hljs-variable">$array2</span></span><span>);

</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$result</span></span><span>);
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

Ausgangsergebnis:

 <span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
    [a] =&gt; </span><span><span class="hljs-number">1</span></span><span>
    [b] =&gt; </span><span><span class="hljs-number">3</span></span><span>
    [c] =&gt; </span><span><span class="hljs-number">4</span></span><span>
)
</span></span>

In diesem Beispiel ersetzt Array_Replace () den Wert in $ array2 durch den Wert desselben Schlüssels (d. H. 'B' ) in $ array1 , während das neue Schlüsselwertpaar ( 'C' => 4 ) in $ array2 in das Ergebnis-Array hinzugefügt wird.

Mehrere Arrays zusammenführen

Array_Replace () unterstützt auch das Übergeben in mehreren Arrays, mit denen Sie Elemente aus mehreren Arrays zusammenführen können.

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$array1</span></span><span> = [</span><span><span class="hljs-string">"a"</span></span><span> =&gt; </span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">2</span></span><span>];
</span><span><span class="hljs-variable">$array2</span></span><span> = [</span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">3</span></span><span>];
</span><span><span class="hljs-variable">$array3</span></span><span> = [</span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-number">4</span></span><span>, </span><span><span class="hljs-string">"d"</span></span><span> =&gt; </span><span><span class="hljs-number">5</span></span><span>];

</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_replace</span></span><span>(</span><span><span class="hljs-variable">$array1</span></span><span>, </span><span><span class="hljs-variable">$array2</span></span><span>, </span><span><span class="hljs-variable">$array3</span></span><span>);

</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$result</span></span><span>);
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

Ausgangsergebnis:

 <span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
    [a] =&gt; </span><span><span class="hljs-number">1</span></span><span>
    [b] =&gt; </span><span><span class="hljs-number">3</span></span><span>
    [c] =&gt; </span><span><span class="hljs-number">4</span></span><span>
    [d] =&gt; </span><span><span class="hljs-number">5</span></span><span>
)
</span></span>

In diesem Beispiel ersetzt der Wert in $ array2 den entsprechenden Schlüssel ( 'B' ) in $ array1 , während die Schlüsselwertpaare in $ array3 direkt zum Ergebnisarray hinzugefügt werden.

Der Unterschied zwischen Array_Replace und Array_Merge

Obwohl Array_Replace () zum Zusammenführen mehrerer Arrays verwendet werden kann, unterscheidet sich sie etwas von der Funktion array_merge () .

  1. Array_Replace () : Es ersetzt den Wert im ursprünglichen Array gemäß dem Schlüssel. Das heißt, wenn es die gleichen Schlüssel gibt, überschreibt das nachfolgende Array die entsprechenden Schlüssel im vorherigen Array.

  2. Array_merge () : Es kombiniert die Arrays unabhängig davon, ob die Schlüssel gleich sind oder nicht. Für indexierte Arrays renoviert es; Für assoziative Arrays behält es den ursprünglichen Schlüssel.

Zum Beispiel:

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$array1</span></span><span> = [</span><span><span class="hljs-string">"a"</span></span><span> =&gt; </span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">2</span></span><span>];
</span><span><span class="hljs-variable">$array2</span></span><span> = [</span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-number">4</span></span><span>];

</span><span><span class="hljs-variable">$result_merge</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_merge</span></span><span>(</span><span><span class="hljs-variable">$array1</span></span><span>, </span><span><span class="hljs-variable">$array2</span></span><span>);

</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$result_merge</span></span><span>);
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

Ausgangsergebnis:

 <span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
    [</span><span><span class="hljs-number">0</span></span><span>] =&gt; </span><span><span class="hljs-number">1</span></span><span>
    [</span><span><span class="hljs-number">1</span></span><span>] =&gt; </span><span><span class="hljs-number">2</span></span><span>
    [b] =&gt; </span><span><span class="hljs-number">3</span></span><span>
    [c] =&gt; </span><span><span class="hljs-number">4</span></span><span>
)
</span></span>

Bei Verwendung von Array_Merge () werden die Indizes des Arrays neu angeordnet, während in Array_Replace () der Index und die Tasten unverändert bleiben.

Dinge zu beachten

  • Array_Replace () ersetzt nur die im ursprünglichen Array vorhandenen Schlüssel. Für nicht übereinstimmende Schlüssel wird das nachfolgende Array direkt zum Ergebnis hinzugefügt.

  • Wenn es im Array numerische Schlüssel gibt, wird Array_Replace () gemäß dem Schlüssel ersetzt, wodurch sich die Reihenfolge der numerischen Schlüssel ändern kann. Und Array_merge () wird die numerischen Schlüssel wieder in den Vordergrund stellen.

Zusammenfassen

Array_Replace () ist eine sehr leistungsstarke Funktion, die zum Ersetzen vorhandener Elemente in einem Array oder zum Zusammenführen von Elementen mehrerer Arrays in ein Array geeignet ist. Wenn Sie Arrays in PHP manipulieren, kann das Beherrschen der Verwendung von Array_Replace () Ihren Code prägnanter und effizienter machen.

Wenn Sie bei der Bearbeitung mehrerer Zahlenkombinationen auf Schlüsselwertersatz und Ergänzung achten müssen, ist Array_Replace () definitiv eines Ihrer unverzichtbaren Werkzeuge.