Heim  >  Artikel  >  Backend-Entwicklung  >  So konvertieren Sie eindimensionale Arrays in PHP

So konvertieren Sie eindimensionale Arrays in PHP

王林
王林Original
2023-05-19 18:40:38391Durchsuche

In 2D-Array konvertieren?

Bei der PHP-Programmierung ist es manchmal erforderlich, ein eindimensionales Array in ein zweidimensionales Array umzuwandeln, damit die Datenverarbeitung und -anzeige bequemer ist. Gruppieren Sie die Daten beispielsweise nach bestimmten Regeln in einem eindimensionalen Array und fügen Sie sie in ein zweidimensionales Array ein, um Statistiken und Analysen zu erleichtern. In diesem Artikel erfahren Sie, wie Sie in PHP ein eindimensionales Array in ein zweidimensionales Array konvertieren und wie Sie Daten gruppieren und sortieren.

  1. Verwenden Sie die Funktion array_chunk() zur Konvertierung

PHP stellt eine Funktion namens array_chunk() zur Verfügung, die ein Array in mehrere kleine Arrays aufteilen kann, wobei jedes kleine Array eine bestimmte Anzahl von Elementen enthält. Unter diesen stellt der Parameter $size die Anzahl der in jedem kleinen Array enthaltenen Elemente dar, und der Parameter $preserve_keys gibt an, ob die Schlüsselnamen des ursprünglichen Arrays beibehalten werden sollen. Verwenden Sie diese Funktion, um ein eindimensionales Array in ein zweidimensionales Array umzuwandeln. Das Folgende ist ein Beispielcode:

<?php
$original_array = array('a', 'b', 'c', 'd', 'e', 'f');
$chunked_array = array_chunk($original_array, 2);  // 将原数组按每2个元素分为一个小数组
print_r($chunked_array);
?>

Die Ausgabe des obigen Codes lautet wie folgt:

Array
(
    [0] => Array
        (
            [0] => a
            [1] => b
        )

    [1] => Array
        (
            [0] => c
            [1] => d
        )

    [2] => Array
        (
            [0] => e
            [1] => f
        )

)

Durch die Funktion array_chunk() teilen wir das ursprüngliche Array in drei kleine Arrays auf, wobei jedes kleine Array zwei Elemente enthält. Dadurch wird ein eindimensionales Array in ein zweidimensionales Array umgewandelt.

  1. Verwenden Sie die for-Schleife für die Konvertierung

Zusätzlich zur Verwendung der Funktion array_chunk() können wir auch die for-Schleife verwenden, um diesen Konvertierungsprozess abzuschließen. Das Folgende ist der Beispielcode:

<?php
$original_array = array('a', 'b', 'c', 'd', 'e', 'f');
$chunked_array = array();
$chunk_size = 2;  // 每个小数组包含元素数量
$chunk_count = ceil(count($original_array) / $chunk_size);  // 小数组数量
for ($i = 0; $i < $chunk_count; $i++) {
    $chunked_array[$i] = array_slice($original_array, $i * $chunk_size, $chunk_size);
}
print_r($chunked_array);
?>

Die Ausgabe des obigen Codes ist die gleiche wie das Ergebnis der Verwendung der obigen Funktion array_chunk(). In diesem Beispiel zählen wir zunächst die Anzahl der kleinen Arrays und verwenden dann die for-Schleife und die Funktion array_slice(), um das ursprüngliche Array zu teilen und es im Array $chunked_array zu speichern.

  1. Daten gruppieren und sortieren

Nachdem wir das eindimensionale Array in ein zweidimensionales Array konvertiert haben, können wir die Daten entsprechend unseren eigenen Anforderungen gruppieren und sortieren. Das Folgende ist ein Codebeispiel:

<?php
$original_array = array(
    array('name' => '张三', 'age' => 18, 'gender' => '男'),
    array('name' => '李四', 'age' => 21, 'gender' => '女'),
    array('name' => '王五', 'age' => 22, 'gender' => '男'),
    array('name' => '赵六', 'age' => 19, 'gender' => '女')
);
$chunked_array = array_chunk($original_array, 2);  // 将原数组按每2个元素分为一个小数组
$sorted_array = array();
foreach ($chunked_array as $chunk) {
    $sorted_chunk = array();
    foreach ($chunk as $item) {
        $sorted_chunk[(int)$item['age']][] = $item;
    }
    ksort($sorted_chunk);
    $sorted_array[] = $sorted_chunk;
}
print_r($sorted_array);
?>

Der obige Code definiert ein eindimensionales Array $original_array mit vier Elementen. Jedes Element ist ein assoziatives Array mit drei Schlüssel-Wert-Paaren: Name, Alter und Geschlecht. Wir teilen das ursprüngliche Array nach jeweils zwei Elementen in ein kleines Array auf und sortieren die Elemente im kleinen Array nach Alter. Schließlich erhalten wir ein zweidimensionales Array $sorted_array, dessen Struktur wie folgt ist:

Array
(
    [0] => Array
        (
            [18] => Array
                (
                    [0] => Array
                        (
                            [name] => 张三
                            [age] => 18
                            [gender] => 男
                        )

                )

            [19] => Array
                (
                    [0] => Array
                        (
                            [name] => 赵六
                            [age] => 19
                            [gender] => 女
                        )

                )

        )

    [1] => Array
        (
            [21] => Array
                (
                    [0] => Array
                        (
                            [name] => 李四
                            [age] => 21
                            [gender] => 女
                        )

                )

            [22] => Array
                (
                    [0] => Array
                        (
                            [name] => 王五
                            [age] => 22
                            [gender] => 男
                        )

                )

        )

)

Durch die Im obigen Code haben wir die Elemente in derselben Gruppe nach Alter sortiert und das Endergebnis im Array $sorted_array platziert.

Zusammenfassung

Dieser Artikel stellt die Methode zum Konvertieren eines eindimensionalen Arrays in ein zweidimensionales Array in PHP vor, einschließlich der Verwendung der Funktion array_chunk() und der for-Schleife für die Konvertierung, und stellt außerdem vor, wie Daten gruppiert und sortiert werden. Im eigentlichen Programmierprozess können wir je nach Bedarf unterschiedliche Methoden zur Datenverarbeitung und -anzeige wählen.

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie eindimensionale Arrays 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