Heim  >  Artikel  >  Backend-Entwicklung  >  So kehren Sie den Schlüssel im PHP-Array um

So kehren Sie den Schlüssel im PHP-Array um

PHPz
PHPzOriginal
2023-04-26 14:21:18504Durchsuche

Array ist in PHP ein sehr verbreiteter Datentyp, der aus einem oder mehreren Schlüssel-Wert-Paaren besteht. Jedes Schlüssel-Wert-Paar besteht aus einem Schlüssel und einem Wert, und im Array können verschiedene Arten von Schlüsseln und Werten verwendet werden.

In einigen Fällen müssen wir möglicherweise die Schlüssel umkehren und gleichzeitig die Werte im Array beibehalten. Einer der Hauptgründe dafür besteht darin, schnell einen Wert in einem Array zu finden und seinen Schlüssel zurückzugeben, ohne das gesamte Array durchlaufen zu müssen.

In PHP ist das Umkehren der Schlüssel und Werte eines Arrays eine relativ einfache Aufgabe. In diesem Artikel werden wir untersuchen, wie man die Schlüssel eines PHP-Arrays umkehrt, und einige Anwendungsbeispiele geben.

Ein Array mit der Funktion array_flip umkehren

Die Funktion array_flip() in PHP kann verwendet werden, um die Schlüssel und Werte eines Arrays umzukehren Array. Diese Funktion dreht die Beziehung zwischen Elementen im Array um, sodass der aktuelle Schlüssel zum Wert und der aktuelle Wert zum Schlüssel wird. array_flip() 函数可以用于反转数组的键和值。该函数将数组中的元素之间的关系翻转,以便当前的键变为值,当前的值变为键。

示例如下:

$original_array = array('one' => 1, 'two' => 2, 'three' => 3, 'four' => 4);
$reversed_array = array_flip($original_array);

在上面的代码中,我们首先声明了一个简单的关联数组 $original_array,它有四个键值对。然后,我们使用 array_flip() 函数将键值对翻转,以生成一个反转后的数组 $reversed_array

反转后的数组 $reversed_array 的输出如下:

Array
(
    [1] => one
    [2] => two
    [3] => three
    [4] => four
)

正如您所看到的,数组的键和值已经被反转了,每个值成为了它原本键的新键。

反转索引数组

在 PHP 中,如果我们想要反转索引数组的键,我们可以使用 array_reverse() 函数。该函数将数组的键和值保持不变,只是将它们的位置相对于数组底部翻转。

示例如下:

$original_array = array('one', 'two', 'three', 'four');
$reversed_array = array_reverse($original_array, true);

在上述示例中,我们首先声明了一个新的索引数组 $original_array,它包含了四个元素。然后,我们使用 array_reverse() 函数将该数组的键翻转,以生成一个反转后的数组 $reversed_array。在本例中,第二个参数设置为 true,表示保留原始数组中的键。

反转后的数组 $reversed_array 的输出如下:

Array
(
    [3] => one
    [2] => two
    [1] => three
    [0] => four
)

正如您所看到的,数组的键已经被反转,而数组中的元素位置并没有改变。

反转多维数组的键

如果我们需要反转多维数组的键,我们可以使用递归函数来处理。递归函数可以遍历整个多维数组,并反转其中所有的键。

示例如下:

function reverse_array_keys($array) {
    if (!is_array($array)) {
        return $array;
    }
    $new_array = array();
    foreach ($array as $key => $value) {
        $new_key = is_numeric($key) ? $key : strrev($key);
        $new_array[$new_key] = reverse_array_keys($value);
    }
    return $new_array;
}

$original_array = array('one' => array('two' => array('three' => 'four')));
$reversed_array = reverse_array_keys($original_array);

在上述示例中,我们首先声明了一个包含多个嵌套数组的数组 $original_array。然后,我们使用 reverse_array_keys() 函数将该数组的键反转,使得每个数组都有其键被翻转。

反转后的数组 $reversed_array 的输出如下:

Array
(
    [eno] => Array
        (
            [owt] => Array
                (
                    [eerht] => four
                )

        )

)

正如您所看到的,多维数组的键已经被反转,每个数组都有其键被翻转。

结论

在 PHP 中,反转数组的键是一项相对简单的任务。我们可以使用 array_flip() 函数来反转关联数组的键和值,使用 array_reverse()

Das Beispiel sieht wie folgt aus:

rrreee

Im obigen Code deklarieren wir zunächst ein einfaches assoziatives Array $original_array, das vier Schlüsselwerte hat Paar. Anschließend drehen wir die Schlüssel-Wert-Paare mit der Funktion array_flip() um, um ein umgekehrtes Array $reversed_array zu erzeugen. #🎜🎜##🎜🎜#Die Ausgabe des umgekehrten Arrays $reversed_array lautet wie folgt: #🎜🎜#rrreee#🎜🎜#Wie Sie sehen können, die Schlüssel und Werte des Arrays wurden umgekehrt. Auf diese Weise wird jeder Wert zu einem neuen Schlüssel für seinen ursprünglichen Schlüssel. #🎜🎜##🎜🎜#Indiziertes Array umkehren #🎜🎜##🎜🎜#Wenn wir in PHP die Schlüssel eines indizierten Arrays umkehren möchten, können wir die Funktion array_reverse() verwenden. Diese Funktion lässt die Schlüssel und Werte des Arrays unverändert und dreht lediglich ihre Positionen relativ zum unteren Rand des Arrays um. #🎜🎜##🎜🎜#Das Beispiel sieht wie folgt aus: #🎜🎜#rrreee#🎜🎜#Im obigen Beispiel deklarieren wir zunächst ein neues Indexarray $original_array, das vier Elemente enthält. Anschließend drehen wir die Schlüssel des Arrays mit der Funktion array_reverse() um, um ein umgekehrtes Array $reversed_array zu erzeugen. In diesem Fall wird der zweite Parameter auf true gesetzt, was bedeutet, dass die Schlüssel im ursprünglichen Array beibehalten werden. #🎜🎜##🎜🎜#Die Ausgabe des umgekehrten Arrays $reversed_array lautet wie folgt: #🎜🎜#rrreee#🎜🎜#Wie Sie sehen können, wurden die Schlüssel des Arrays umgekehrt, Die Position der Elemente im Array hat sich nicht geändert. #🎜🎜##🎜🎜#Die Schlüssel eines mehrdimensionalen Arrays umkehren#🎜🎜##🎜🎜#Wenn wir die Schlüssel eines mehrdimensionalen Arrays umkehren müssen, können wir eine rekursive Funktion verwenden, um damit umzugehen. Eine rekursive Funktion kann ein gesamtes mehrdimensionales Array durchlaufen und alle darin enthaltenen Schlüssel umkehren. #🎜🎜##🎜🎜#Das Beispiel sieht wie folgt aus: #🎜🎜#rrreee#🎜🎜#Im obigen Beispiel deklarieren wir zunächst ein Array $original_array, das mehrere verschachtelte Arrays enthält. Anschließend kehren wir die Schlüssel dieses Arrays mit der Funktion reverse_array_keys() um, sodass der Schlüssel jedes Arrays umgekehrt wird. #🎜🎜##🎜🎜#Die Ausgabe des umgekehrten Arrays $reversed_array lautet wie folgt: #🎜🎜#rrreee#🎜🎜#Wie Sie sehen können, wurden die Schlüssel des mehrdimensionalen Arrays umgekehrt , die Schlüssel jedes Arrays sind vertauscht. #🎜🎜##🎜🎜#Fazit#🎜🎜##🎜🎜#In PHP ist das Umkehren der Schlüssel eines Arrays eine relativ einfache Aufgabe. Wir können die Funktion array_flip() verwenden, um die Schlüssel und Werte eines assoziativen Arrays umzukehren, die Funktion array_reverse(), um die Schlüssel eines indizierten Arrays umzukehren, und Für mehrdimensionale Arrays können wir dies mithilfe rekursiver Funktionen verarbeiten. #🎜🎜##🎜🎜#Ganz gleich, welche Methode Sie verwenden: Stellen Sie sicher, dass Sie die Auswirkungen Ihrer Vorgänge verstehen und testen Sie, ob Ihr Code wie erwartet funktioniert. #🎜🎜#

Das obige ist der detaillierte Inhalt vonSo kehren Sie den Schlüssel im PHP-Array um. 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