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

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

Mary-Kate Olsen
Freigeben: 2024-11-05 00:58:01
Original
700 Leute haben es durchsucht

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

Neuindizierung mehrdimensionaler Array-Subarray-Elemente

In PHP werden Arrays häufig zum Speichern komplexer Datenstrukturen, einschließlich mehrdimensionaler Arrays, verwendet. Manchmal ist es notwendig, die Schlüssel der Unterarrays innerhalb eines mehrdimensionalen Arrays zurückzusetzen.

Betrachten Sie beispielsweise das folgende mehrdimensionale Array mit nicht sequentiellen Schlüsseln:

Array (
    [1_Name] => Array (
        [1] => leo
        [4] => NULL
    )
    [1_Phone] => Array (
        [1] => 12345
        [4] => 434324
    )
)
Nach dem Login kopieren

Das Ziel ist Setzen Sie die Schlüssel der Subarrays zurück, um bei Null zu beginnen:

Array (
    [1_Name] => Array (
        [0] => leo
        [1] => NULL
    )
    [1_Phone] => Array (
        [0] => 12345
        [1] => 434324
    )
)
Nach dem Login kopieren

Lösung

Um die Schlüssel aller Subarrays im mehrdimensionalen Array zurückzusetzen, können Sie array_map verwenden ()-Funktion zusammen mit der Funktion array_values():

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

Die Funktion array_values() gibt ein neues Array mit aufeinanderfolgenden Zifferntasten aus dem Eingabearray zurück, wodurch die Tasten effektiv zurückgesetzt werden. Die Funktion array_map() wendet die Funktion array_values() auf jedes Unterarray im ursprünglichen Array an, was zu einem neuen mehrdimensionalen Array mit neu indizierten Unterarrays führt.

Hinweis:

Wenn Sie nur die Schlüssel der Subarrays der ersten Ebene zurücksetzen möchten, ohne die Neuindizierung auf verschachtelte Subarrays anzuwenden, können Sie array_values() direkt verwenden, ohne array_map() zu verwenden:

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

Das obige ist der detaillierte Inhalt vonWie indiziere ich Subarray-Elemente in einem mehrdimensionalen Array in PHP 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage