Heim > Backend-Entwicklung > PHP-Tutorial > Wie indiziere ich Subarray-Elemente in einem mehrdimensionalen PHP-Array neu?

Wie indiziere ich Subarray-Elemente in einem mehrdimensionalen PHP-Array neu?

DDD
Freigeben: 2024-11-05 07:47:01
Original
713 Leute haben es durchsucht

How to Re-index Subarray Elements in a Multidimensional PHP Array?

Subarray-Elemente in einem mehrdimensionalen Array neu indizieren

Das Zurücksetzen der Schlüssel von Subarrays in einem mehrdimensionalen Array kann eine häufige Aufgabe in PHP sein. Dieser Artikel befasst sich mit der Frage, wie dieses Ziel erreicht werden kann.

Problem:

Betrachten Sie die folgende Anordnung:

<code class="php">Array (
    [1_Name] => Array (
        [1] => leo
        [4] => NULL
    )
    [1_Phone] => Array (
        [1] => 12345
        [4] => 434324
    )  
)</code>
Nach dem Login kopieren

Die Aufgabe besteht darin, Indizieren Sie die Unterarrays wie folgt neu:

<code class="php">Array (
    [1_Name] => Array (
        [0] => leo
        [1] => NULL
    )
    [1_Phone] => Array (
        [0] => 12345
        [1] => 434324
    )
)</code>
Nach dem Login kopieren

Lösung:

Um die Schlüssel aller Arrays in einem Array zurückzusetzen, können Sie den folgenden Code verwenden:

<code class="php">$arr = array_map('array_values', $arr);</code>
Nach dem Login kopieren

Wenn Sie nur die Array-Schlüssel der ersten Ebene zurücksetzen möchten, können Sie array_values() ohne array_map verwenden:

<code class="php">$arr = array_values($arr);</code>
Nach dem Login kopieren

Erklärung:

Die Funktion array_map() wendet eine benutzerdefinierte Funktion auf jedes Element eines Arrays an. In diesem Fall ist die benutzerdefinierte Funktion array_values, die ein Array mit den Werten des Eingabearrays zurückgibt. Indem wir array_values ​​auf jedes Unterarray des ursprünglichen Arrays anwenden, setzen wir die Schlüssel dieser Unterarrays effektiv zurück.

Die Funktion array_values() gibt ein neues Array zurück, das die Werte des Eingabearrays enthält. Bei Verwendung in einem mehrdimensionalen Array wird ein Array von Arrays zurückgegeben, wobei jedes Subarray die Werte des entsprechenden Subarrays aus dem Eingabearray enthält. Indem wir das Ergebnis von array_values() der ursprünglichen Array-Variablen zuweisen, setzen wir die Schlüssel der Unterarrays im ursprünglichen Array effektiv zurück.

Das obige ist der detaillierte Inhalt vonWie indiziere ich Subarray-Elemente in einem mehrdimensionalen PHP-Array neu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage