Heim  >  Artikel  >  Backend-Entwicklung  >  So erhalten Sie ein mehrdimensionales Array in PHP

So erhalten Sie ein mehrdimensionales Array in PHP

王林
王林Original
2023-05-11 09:38:07855Durchsuche

In der PHP-Programmierung gehören mehrdimensionale Arrays zu den am häufigsten vorkommenden Datenstrukturen. Mehrdimensionales Array bedeutet, dass jedes Element in einem Array auch ein Array ist. Diese Art von Array ist strukturierter als ein eindimensionales Array. Wenn wir mit mehrdimensionalen Arrays arbeiten, müssen wir wissen, wie wir die Werte erhalten. In diesem Artikel wird erläutert, wie man mehrdimensionale Arrays erhält.

1. Grundlegende Operationen

Das Abrufen der Werte in einem zweidimensionalen Array ist sehr einfach. Verwenden Sie einfach eckige Klammern und Indizes wie bei einem eindimensionalen Array. Beispiel: $arr0, damit Sie den zweiten Wert im ersten Element im Array erhalten können.

2. Schleifendurchquerung

Wenn das mehrdimensionale Array mehr als zwei Dimensionen hat, wird die Verwendung grundlegender Operationen äußerst umständlich. Zu diesem Zeitpunkt können wir eine Schleife verwenden, um das mehrdimensionale Array einfach zu durchlaufen und die Werte darin zu erhalten. Der Code ist wie folgt implementiert:

foreach($arr as $key1=>$val1){
    foreach($val1 as $key2=>$val2){
        echo $arr[$key1][$key2];
    }
}

Sie können sehen, dass wir den Index und den Wert des eindimensionalen Arrays in der äußeren Schleife erhalten und nach Eintritt in die innere Schleife den Index und den Wert des zweidimensionalen Arrays erhalten , und geben Sie es dann aus.

3. Rekursive Erfassung

Wenn das mehrdimensionale Array viele Dimensionen hat, ist die Verwendung der Schleifendurchquerung sehr umständlich. Zu diesem Zeitpunkt können wir rekursive Funktionen verwenden, um Werte in mehrdimensionalen Arrays zu erhalten.

Die Implementierungsmethode der rekursiven Funktion besteht darin, zu bestimmen, ob das aktuell erhaltene Element ein Array ist, und es in diesem Fall weiterhin rekursiv abzurufen, bis der Wert der letzten Dimension erhalten wird. Der Beispielcode lautet wie folgt:

function get_val($arr){
    foreach($arr as $val){
        if(is_array($val)){
            get_val($val);
        }else{
            echo $val;
        }
    }
}

Wie Sie sehen, ermitteln wir zunächst, ob der aktuell erhaltene Wert ein Array ist. Wenn ja, rufen Sie die rekursive Funktion weiter auf. Wenn nicht, geben Sie ihn aus. Auf diese Weise können Sie unabhängig von der Anzahl der Dimensionen des Arrays rekursive Funktionen verwenden, um die darin enthaltenen Werte abzurufen.

4. Verwenden Sie array_column

PHP bietet eine array_column-Funktion, die uns helfen kann, die angegebene Spalte in einem mehrdimensionalen Array zu erhalten. Die Syntax dieser Funktion lautet wie folgt:

array_column($arr, $column_key [, $index_key]);

Unter diesen ist der Parameter $arr das Array der abzurufenden Werte, der Parameter $column_key der Index der abzurufenden Spalte und der Parameter $index_key der Index des neuen Arrays. Wenn $index_key nicht angegeben ist, wird ein numerischer Index beginnend bei 0 verwendet.

Der Beispielcode lautet wie folgt:

$arr = array(
    array('id'=>1, 'name'=>'Tom', 'age'=>18),
    array('id'=>2, 'name'=>'Jerry', 'age'=>20),
    array('id'=>3, 'name'=>'Lucy', 'age'=>22)
);
$name_arr = array_column($arr, 'name');

Im obigen Code verwenden wir die Funktion array_column, um die Spalte „Name“ im Array $arr abzurufen. Das letzte $name_arr-Array ist die Sammlung aller Namen im Array, wobei jedes Element eine Zeichenfolge ist, die dem „Name“-Wert jedes Elements im Array entspricht.

Zusammenfassung:

In PHP ist das Abrufen mehrdimensionaler Arrays ein sehr grundlegender und wichtiger Vorgang. Durch die Einführung dieses Artikels können wir verschiedene Erfassungsmethoden kennen, wie z. B. Grundoperationen, Schleifendurchlauf, rekursive Erfassung, array_column-Funktion usw. Verschiedene Erfassungsmethoden eignen sich für unterschiedliche Szenarien und können je nach tatsächlicher Situation ausgewählt und eingesetzt werden.

Das obige ist der detaillierte Inhalt vonSo erhalten Sie ein mehrdimensionales Array in PHP. 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