Heim > Backend-Entwicklung > PHP-Problem > So fragen Sie ein dreidimensionales Array in PHP ab

So fragen Sie ein dreidimensionales Array in PHP ab

PHPz
Freigeben: 2023-04-25 10:07:53
Original
728 Leute haben es durchsucht

In der PHP-Entwicklung werden häufig dreidimensionale Arrays zum Speichern und Verarbeiten von Daten verwendet. Aufgrund der komplexen Struktur von Array-Elementen ist auch die Methode zur Abfrage eines dreidimensionalen Arrays etwas kompliziert. Solange Sie jedoch einige Grundkenntnisse beherrschen, können Sie dreidimensionale Arrays problemlos durchlaufen und abfragen.

In diesem Artikel erfahren Sie, wie Sie mit PHP dreidimensionale Arrays abfragen, sodass Sie Array-Daten einfacher verarbeiten können.

Was ist ein dreidimensionales Array?

In PHP können Arrays mehrdimensional sein, z. B. zweidimensionale Arrays, dreidimensionale Arrays usw. Ein dreidimensionales Array kann als ein Array betrachtet werden, das aus mehreren zweidimensionalen Arrays besteht, wobei jedes zweidimensionale Array ein Array ist, das aus mehreren eindimensionalen Arrays besteht. Sie können den folgenden Code verwenden, um ein dreidimensionales Array zu definieren:

$threeDimensionalArray = array(
    array(
        array(1, 2, 3),
        array(4, 5, 6),
        array(7, 8, 9),
    ),
    array(
        array(10, 11, 12),
        array(13, 14, 15),
        array(16, 17, 18),
    ),
);
Nach dem Login kopieren

Im obigen Code definieren wir ein dreidimensionales Array mit dem Namen $ threeDimensionalArray. Das Array besteht aus zwei zweidimensionalen Arrays und jedes zweidimensionale Array besteht aus drei eindimensionalen Arrays. Jedes eindimensionale Array enthält 3 Elemente.

Wie durchläuft man ein dreidimensionales Array?

Es gibt zwei Möglichkeiten, ein dreidimensionales Array zu durchlaufen, nämlich die for-Schleife und die foreach-Schleife. Im Folgenden stellen wir diese beiden Methoden vor.

Verwenden Sie eine for-Schleife, um das dreidimensionale Array zu durchlaufen:

for ($i = 0; $i < count($threeDimensionalArray); $i++) {
    for ($j = 0; $j < count($threeDimensionalArray[$i]); $j++) {
        for ($k = 0; $k < count($threeDimensionalArray[$i][$j]); $k++) {
            echo $threeDimensionalArray[$i][$j][$k];
        }
    }
}
Nach dem Login kopieren

Im obigen Code verwenden wir drei verschachtelte for-Schleifen, um das dreidimensionale Array $ threeDimensionalArray zu durchlaufen.

Verwenden Sie die foreach-Schleife, um das dreidimensionale Array zu durchlaufen:

foreach ($threeDimensionalArray as $twoDimensionalArray) {
    foreach ($twoDimensionalArray as $oneDimensionalArray) {
        foreach ($oneDimensionalArray as $value) {
            echo $value;
        }
    }
}
Nach dem Login kopieren

Im obigen Code verwenden wir drei verschachtelte foreach-Schleifen, um das dreidimensionale Array $ threeDimensionalArray zu durchlaufen.

Wie frage ich ein dreidimensionales Array ab?

Lassen Sie uns verschiedene Möglichkeiten zum Abfragen dreidimensionaler Arrays vorstellen.

Greifen Sie direkt über den Index auf das Element zu:

Wenn Sie die genaue Position des erforderlichen Elements im dreidimensionalen Array kennen, können Sie wie unten gezeigt direkt auf das Element zugreifen, indem Sie den Index verwenden:

echo $threeDimensionalArray[1][2][1]; // 输出 17
Nach dem Login kopieren

Im obigen Beispiel haben wir darauf zugegriffen das $ threeDimensionalArray-Array Das zweite Element des dritten eindimensionalen Arrays im zweiten zweidimensionalen Array.

Verwenden Sie eine foreach-Schleife, um Elemente zu durchlaufen und zu bestimmen:

Sie können eine foreach-Schleife verwenden, um ein dreidimensionales Array zu durchlaufen und mithilfe einer if-Anweisung zu bestimmen, ob die Elemente bestimmte Bedingungen erfüllen.

foreach ($threeDimensionalArray as $twoDimensionalArray) {
    foreach ($twoDimensionalArray as $oneDimensionalArray) {
        foreach ($oneDimensionalArray as $value) {
            if ($value == 6) {
                echo "Found!";
                break 3; // 结束所有循环
            }
        }
    }
}
Nach dem Login kopieren

Im obigen Code haben wir das dreidimensionale Array $ threeDimensionalArray mit drei foreach-Schleifen durchlaufen und eine if-Anweisung verwendet, um Element 6 zu finden. Wenn Element 6 gefunden wird, beenden wir alle Schleifen mit der Anweisung break 3.

Verwenden Sie die Funktion array_filter():

Wenn Sie Elemente in einem dreidimensionalen Array finden möchten, die bestimmte Bedingungen erfüllen, können Sie die in PHP integrierte Funktion array_filter() verwenden. Hier ist ein Beispiel:

function findElements($element) {
    return ($element % 2 == 0);
}

$results = array_filter($threeDimensionalArray, function ($twoDimensionalArray) {
    return array_filter($twoDimensionalArray, function ($oneDimensionalArray) {
        return array_filter($oneDimensionalArray, 'findElements');
    });
});

print_r($results);
Nach dem Login kopieren

Im obigen Code haben wir eine Funktion namens findElements definiert, die zurückgibt, ob das Element eine gerade Zahl ist. Verwenden Sie dann die Funktion array_filter(), um das dreidimensionale Array $ threeDimensionalArray zu durchlaufen und die Elemente zurückzugeben, die die Bedingungen erfüllen.

Zusammenfassung

In diesem Artikel haben wir gelernt, wie man dreidimensionale Arrays in PHP durchläuft und abfragt. Obwohl das Durchlaufen und Abfragen dreidimensionaler Arrays mühsam sein kann, kann die Beherrschung einiger Techniken es Ihnen erleichtern, die Daten im Array zu manipulieren und daraus wertvollere Informationen zu gewinnen.

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