PHP-Array-Umkehrmethode

PHPz
Freigeben: 2023-05-11 10:55:06
Original
2933 Leute haben es durchsucht

In diesem Artikel wird die Methode der PHP-Array-Umkehrung vorgestellt.

In PHP ist Array einer der häufigsten Datentypen, der mehrere Werte speichern kann. Die Implementierung der Umkehrung eines Arrays ist eine der häufigsten Anforderungen. Im Folgenden werden verschiedene Methoden zur Implementierung der PHP-Array-Umkehroperation demonstriert.

Methode 1: array_reverse()-Funktion

PHP bietet eine integrierte Funktion array_reverse() zum Umkehren des Arrays. Diese Funktion gibt ein neues Array zurück, in dem die Elemente des ursprünglichen Arrays in umgekehrter Reihenfolge angeordnet sind. Zum Beispiel:

$arr = array(1, 2, 3, 4, 5);
$reversedArr = array_reverse($arr);
print_r($reversedArr);
Nach dem Login kopieren

Das Ausgabeergebnis der Ausführung des obigen Codes ist:

Array
(
    [0] => 5
    [1] => 4
    [2] => 3
    [3] => 2
    [4] => 1
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Diese Funktion kann auch wählen, ob der Schlüsselname des Arrays beibehalten oder zurückgesetzt werden soll. Der zweite Parameter ist optional und sein Standardwert ist false, was bedeutet, dass der Schlüsselname nicht beibehalten wird. Wenn der Wert wahr ist, bleibt der Schlüsselname erhalten.

$arr = array("one" => 1, "two" => 2, "three" => 3, "four" => 4, "five" => 5);
$reversedArr = array_reverse($arr, true);
print_r($reversedArr);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Array
(
    [five] => 5
    [four] => 4
    [three] => 3
    [two] => 2
    [one] => 1
)
Nach dem Login kopieren

Methode 2: for-Schleife

Der Array-Umkehrvorgang kann auch mithilfe der for-Schleife implementiert werden. Wir können zwei Zeiger verwenden, einen am Anfang und einen am Ende des Arrays, die beiden Zeiger in einer Schleife bewegen und die Elemente entsprechend austauschen. Die spezifische Implementierung lautet wie folgt:

$arr = array(1, 2, 3, 4, 5);
$len = count($arr);
for ($i = 0; $i < $len / 2; $i++) {
    $temp = $arr[$i];
    $arr[$i] = $arr[$len - $i - 1];
    $arr[$len - $i - 1] = $temp;
}
print_r($arr);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Array
(
    [0] => 5
    [1] => 4
    [2] => 3
    [3] => 2
    [4] => 1
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Methode 3: Verwenden Sie die Funktion array_reduce() und den Reverse-Array-Schlüsselnamen

Wir können auch die Funktion array_reduce() verwenden, um das Array umzukehren. Die Funktion array_reduce() akzeptiert ein iterierbares Array und kann Rückruffunktionen verwenden, um Operationen wie Summierung, Filterung und Transformation für jedes Element durchzuführen. Das Folgende ist ein Beispiel für eine Array-Umkehr:

$arr = array(1, 2, 3, 4, 5);
$reversedArr = array_reduce(array_keys($arr), function ($acc, $key) use ($arr) {
    $acc[$key] = $arr[count($arr) - 1 - $key];
    return $acc;
}, []);
print_r($reversedArr);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Array
(
    [0] => 5
    [1] => 4
    [2] => 3
    [3] => 2
    [4] => 1
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Der obige Code verwendet die Funktion array_keys(), um den Schlüsselnamen des Arrays abzurufen, und übergibt ihn als ersten Parameter an array_reduce(). Funktion, sodass sie in der Implementierung der Rückruffunktion verwendet wird. Die nächste Rückruffunktion verwendet den Schlüsselnamen, um den Umkehrindex des Arrays zu berechnen und dadurch das Array umzukehren. Der Parameter $acc ist ein Akkumulator, dessen Wert immer ein Array ist, wobei der Anfangswert das leere Array [] ist.

Wie Sie sehen, ist die Verwendung der Funktion array_reduce() zum Erreichen einer Array-Umkehr etwas kompliziert. Diese Funktion ist jedoch sehr nützlich, wenn es um andere Array-Operationen geht.

Methode 4: Verwenden Sie die Funktionen array_multisort() und array_column()

Die letzte Möglichkeit, die Array-Umkehroperation zu implementieren, besteht darin, die Funktionen von PHP zur Verarbeitung mehrdimensionaler Arrays zu verwenden. Wir können zunächst die Funktion array_multisort() verwenden, um die unabhängigen ungeraden und geraden Indizes in umgekehrter Reihenfolge entsprechend dem Index des Arrays zu sortieren. Verwenden Sie dann die Funktion array_column(), um das Array wieder in ein einzelnes Array umzuwandeln. Die spezifische Implementierung lautet wie folgt:

$arr = array(1, 2, 3, 4, 5);
$n = count($arr);
for ($i = 0; $i < $n; $i++) {
    if ($i % 2 == 0) {
        $even[] = $arr[$i];
    } else {
        $odd[] = $arr[$i];
    }
}
array_multisort(array_reverse($odd), SORT_NUMERIC, array_reverse($even), SORT_NUMERIC);
$reversedArr = array_column(array($even, $odd), 0);
print_r($reversedArr);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Array
(
    [0] => 5
    [1] => 4
    [2] => 3
    [3] => 2
    [4] => 1
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Der obige Code speichert den ungeraden Index und den geraden Index in zwei Arrays $odd bzw. $even. Als nächstes verwenden Sie die Funktion array_multisort(), um die beiden Arrays in umgekehrter Reihenfolge zu sortieren, und schließlich verwenden Sie die Funktion array_column(), um das zweidimensionale Array in ein einzelnes Array umzuwandeln.

Zusammenfassung

In diesem Artikel wurden vier verschiedene Methoden zur Implementierung der PHP-Array-Umkehroperation erläutert. Unter diesen ist die Funktion array_reverse() die einfachste und direkteste Methode. Die for-Schleifenmethode ist relativ einfach zu bedienen, aber nicht so effizient wie die Funktion array_reverse(). Die Implementierung der Array-Umkehr mit der Funktion array_reduce() ist relativ komplex, aber die Funktion ist sehr nützlich, wenn mit anderen Array-Operationen gearbeitet wird. Abschließend zeigen wir einen Ansatz, der auf den Funktionen array_multisort() und array_column() basiert, um Array-Umkehroperationen zu implementieren, indem wir die Fähigkeit von PHP nutzen, mehrdimensionale Arrays zu verarbeiten.

Das obige ist der detaillierte Inhalt vonPHP-Array-Umkehrmethode. 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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!