Heim >Backend-Entwicklung >PHP-Problem >Konvertierung einer PHP-Array-Schleife

Konvertierung einer PHP-Array-Schleife

王林
王林Original
2023-05-19 20:00:47697Durchsuche

In der PHP-Programmierung sind Arrays eine der häufigsten Datenstrukturen. Mithilfe von Arrays können wir große Mengen zusammengehöriger Daten speichern, organisieren und darauf zugreifen. In vielen Fällen müssen wir eine Reihe von Vorgängen für Arrays ausführen, z. B. Suchen, Sortieren, Filtern usw. Unter diesen ist die Array-Schleifenkonvertierung ein relativ wichtiger Vorgang. In diesem Artikel wird detailliert beschrieben, wie PHP zur Implementierung der Array-Schleifenkonvertierung verwendet wird.

1. Grundstruktur der Array-Schleife

In PHP können wir for, foreach und andere Schleifenanweisungen verwenden, um ein Array zu durchlaufen. Das Folgende ist die Grundstruktur einer for-Schleife:

for ($i = 0; $i < count($array); $i++) {
  // do something with $array[$i]
}

Der gleiche Effekt kann mit der foreach-Anweisung erzielt werden:

foreach ($array as $value) {
  // do something with $value
}

2. Array-Konvertierungsmethoden

In PHP können wir die folgenden zwei Methoden zum Konvertieren von Arrays verwenden:

  1. Array-Funktionen verwenden

PHP bietet eine große Anzahl von Funktionen zum Ausführen verschiedener Operationen an Arrays, von denen einige zum Konvertieren von Arrays verwendet werden können. Hier sind einige häufig verwendete Funktionen:

  • array_map(): wendet eine Rückruffunktion auf jedes Element im Array an und gibt ein neues Array zurück.
  • array_filter(): verwendet die Rückruffunktion, um die Elemente im Array zu filtern und gibt ein neues zurück Array von
  • array_reduce(): Reduzieren Sie das Array auf einen einzelnen Wert und geben Sie diesen Wert zurück

Hier ist ein Beispiel für die Verwendung der Funktion array_map() zum Quadrieren jedes Elements im Array:

$array = array(1, 2, 3, 4, 5);
$new_array = array_map(function($x){ return $x * $x; }, $array);
print_r($new_array);

Die Ausgabe lautet:

Array
(
    [0] => 1
    [1] => 4
    [2] => 9
    [3] => 16
    [4] => 25
)

Beachten Sie, dass wir bei Verwendung der Funktion array_map() eine Rückruffunktion als Parameter übergeben müssen. Diese Rückruffunktion verwendet ein Argument (den Wert jedes Elements) und gibt einen Wert zurück, um das Element zu ersetzen.

  1. Schleifenstruktur verwenden

Wir können das Array durchlaufen und es mithilfe der for- oder foreach-Anweisung konvertieren. Das Folgende ist ein Beispiel für die Verwendung einer for-Schleife, um die Elemente in einem Array zu quadrieren:

$array = array(1, 2, 3, 4, 5);
$new_array = array();
for ($i = 0; $i < count($array); $i++) {
  $new_array[] = $array[$i] * $array[$i];
}
print_r($new_array);

Das Ausgabeergebnis ist auch:

Array
(
    [0] => 1
    [1] => 4
    [2] => 9
    [3] => 16
    [4] => 25
)

3. Stapelkonvertierungsoperation

Angenommen, wir haben ein zweidimensionales Array mit den folgenden Daten:

$data = array(
  array('name' => '张三', 'age' => 19, 'gender' => '男'),
  array('name' => '李四', 'age' => 21, 'gender' => '女'),
  array('name' => '王五', 'age' => 20, 'gender' => '男'),
);

Jetzt müssen wir es in das folgende Format konvertieren:

$new_data = array(
  array('姓名' => '张三', '年龄' => 19, '性别' => '男'),
  array('姓名' => '李四', '年龄' => 21, '性别' => '女'),
  array('姓名' => '王五', '年龄' => 20, '性别' => '男'),
);

Wir können eine foreach-Schleife verwenden, um diese Operation auszuführen:

$new_data = array();
foreach ($data as $values) {
  $new_data[] = array('姓名' => $values['name'], '年龄' => $values['age'], '性别' => $values['gender']);
}
print_r($new_data);

Das Ausgabeergebnis ist wie folgt:

Array
(
    [0] => Array
        (
            [姓名] => 张三
            [年龄] => 19
            [性别] => 男
        )

    [1] => Array
        (
            [姓名] => 李四
            [年龄] => 21
            [性别] => 女
        )

    [2] => Array
        (
            [姓名] => 王五
            [年龄] => 20
            [性别] => 男
        )

)

4. Notizen

  1. Das Original Array wird nicht geändert

In PHP generieren Schleifenkonvertierungsvorgänge normalerweise ein neues Array, ohne das ursprüngliche Array zu ändern. Daher sollte darauf geachtet werden, den Wert des ursprünglichen Arrays beim Betrieb nicht zu ändern.

  1. Rückruffunktion

Wenn wir Array-Funktionen zur Konvertierung verwenden, müssen wir eine Rückruffunktion als Parameter übergeben. Wenn die Rückruffunktion auf einige externe Variablen zugreifen muss, müssen Sie einen Abschluss verwenden, um die Rückruffunktion zu definieren, um sicherzustellen, dass sie korrekt auf die externen Variablen zugreifen kann.

  1. Index des Arrays

Bei der Schleifenkonvertierungsoperation müssen wir auf den Index des Arrays achten. Wenn wir den Index des neuen Arrays nicht explizit angeben, weist PHP automatisch den Indexwert zu, normalerweise beginnend bei 0 und aufsteigend.

5. Zusammenfassung

Array in PHP ist eine sehr nützliche Datenstruktur, und die Schleifenkonvertierung ist eine sehr wichtige Operation unter ihnen. Wir können for-, foreach-Schleifenstrukturen oder Array-Funktionen wie array_map, array_filter, array_reduce usw. verwenden, um eine Array-Konvertierung zu erreichen. Während des Vorgangs müssen Sie darauf achten, den Wert des ursprünglichen Arrays nicht zu ändern, und Sie müssen auf den Index des Arrays achten. Ich hoffe, dass dieser Artikel den Lesern dabei helfen kann, die Konvertierung von Array-Schleifen in PHP zu meistern.

Das obige ist der detaillierte Inhalt vonKonvertierung einer PHP-Array-Schleife. 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