Heim >Backend-Entwicklung >PHP-Problem >So ändern Sie den Schlüsselnamen oder Index eines PHP-Arrays

So ändern Sie den Schlüsselnamen oder Index eines PHP-Arrays

PHPz
PHPzOriginal
2023-04-19 10:08:41683Durchsuche

In PHP ist Array ein sehr häufig verwendeter Datentyp. Normalerweise können wir über Index- oder Schlüsselnamen auf Elemente in einem Array zugreifen. In einigen Fällen müssen wir möglicherweise den Schlüsselnamen oder den Index eines Elements ändern. In diesem Artikel erfahren Sie, wie Sie den Schlüsselnamen oder Index eines PHP-Arrays ändern.

1. Ändern Sie den Index des Arrays

1. Verwenden Sie die PHP-Funktion array_values()

Wenn Sie den Index des Arrays ändern möchten, können Sie die in PHP integrierte Funktion array_values() verwenden. Diese Funktion gibt ein neues Indexarray zurück, dessen Indizes von 0 an aufsteigend sind.

Beispielcode:

// 原数组
$fruits = array("apple", "banana", "cherry");
 
// 使用array_values()函数获取新的索引数组
$new_fruits = array_values($fruits);
 
// 输出新数组
print_r($new_fruits);

Ausgabeergebnis:

Array
(
    [0] => apple
    [1] => banana
    [2] => cherry
)

Im Beispielcode deklarieren wir zunächst ein primitives Array mit drei Elementen: $fruits. Dann verwenden wir die Funktion array_values(), um ein neues Indexarray $new_fruits aus dem ursprünglichen Array zu erhalten. Abschließend verwenden wir die Funktion print_r(), um das neue Array auszugeben.

2. Verwenden Sie die PHP-Funktion array_combine()

Wenn Sie die Werte im ursprünglichen Array als Schlüsselnamen des neuen Indexarrays verwenden möchten, können Sie die Funktion array_combine() verwenden. Diese Funktion erfordert zwei Parameter, einen als Schlüsselnamen des neuen Indexarrays und einen als Wert des ursprünglichen Arrays.

Beispielcode:

// 原数组
$fruits = array("apple", "banana", "cherry");
 
// 使用array_combine()函数获取新的索引数组
$new_fruits = array_combine(range(1, count($fruits)), array_values($fruits));
 
// 输出新数组
print_r($new_fruits);

Ausgabeergebnis:

Array
(
    [1] => apple
    [2] => banana
    [3] => cherry
)

In diesem Beispielcode deklarieren wir zunächst ein primitives Array $fruits, das drei Elemente enthält. Anschließend verwenden wir die Funktion range(), um ein neues Array mit den Indexschlüsseln 1, 2 und 3 zu generieren. Schließlich verwenden wir die Funktion array_values(), um die Werte des ursprünglichen Arrays abzurufen, und verwenden die Funktion array_combine(), um die beiden Arrays zu einem neuen indizierten Array $new_fruits zu kombinieren.

3. Verwenden Sie die foreach-Schleife, um das Array zu durchlaufen.

Das Ändern des Array-Index kann auch durch Durchlaufen des Arrays und manuelles Ändern des Index jedes Elements erreicht werden.

Beispielcode:

// 原数组
$fruits = array("apple", "banana", "cherry");
 
// 遍历数组并更改每个元素的索引
$new_fruits = array();
$i = 1;
foreach ($fruits as $fruit) {
    $new_fruits[$i] = $fruit;
    $i++;
}
 
// 输出新数组
print_r($new_fruits);

Ausgabeergebnis:

Array
(
    [1] => apple
    [2] => banana
    [3] => cherry
)

In diesem Beispielcode deklarieren wir ein primitives Array $fruits mit drei Elementen. Anschließend verwenden wir eine foreach-Schleife, um das Array zu durchlaufen, den Index jedes Elements auf 1, 2 und 3 zu ändern und ihn in einem neuen Array $new_fruits zu speichern. Abschließend verwenden wir die Funktion print_r(), um das neue Array auszugeben.

2. Ändern Sie den Schlüsselnamen des Arrays

1. Verwenden Sie die PHP-Funktionen array_keys() und array_values()

Wenn Sie den Schlüsselnamen des Arrays ändern möchten, können Sie die PHP-Funktionen array_keys() und verwenden array_values().

Beispielcode:

// 原数组
$student_scores = array("Tom" => 80, "Jerry" => 90, "Mickey" => 95);
 
// 获取新的键名数组和值数组
$new_keys = array_values($student_scores);
$new_values = array_keys($student_scores);
 
// 用新键名数组和值数组组成新数组
$new_student_scores = array_combine($new_keys, $new_values);
 
// 输出新数组
print_r($new_student_scores);

Ausgabeergebnis:

Array
(
    [80] => Tom
    [90] => Jerry
    [95] => Mickey
)

In diesem Beispielcode deklarieren wir ein Array $student_scores, das drei ursprüngliche Schlüssel-Wert-Paare enthält. Dann verwenden wir die Funktion array_keys(), um die Schlüssel des ursprünglichen Arrays abzurufen, und die Funktion array_values(), um die Werte des ursprünglichen Arrays abzurufen. Als nächstes verwenden wir die Funktion array_combine(), um die neuen Schlüssel und Werte in einem neuen Array $new_student_scores neu zu kombinieren.

2. Verwenden Sie die PHP-Funktion array_map()

Sie können auch die PHP-Funktion array_map() verwenden, um den Schlüsselnamen des Arrays zu ändern. Die Funktion array_map() wendet eine Rückruffunktion auf ein Array an und gibt ein neues Array zurück, das alle Rückgabewerte enthält.

Beispielcode:

// 原数组
$student_scores = array("Tom" => 80, "Jerry" => 90, "Mickey" => 95);
 
// 使用array_map()函数更改键名
$new_student_scores = array_map(function ($score, $name) {
    return [$score, $name];
}, $student_scores, array_keys($student_scores));
 
// 用新键名数组和值数组组成新数组
$new_student_scores = array_combine(array_column($new_student_scores, 0), array_column($new_student_scores, 1));
 
// 输出新数组
print_r($new_student_scores);

Ausgabeergebnis:

Array
(
    [80] => Tom
    [90] => Jerry
    [95] => Mickey
)

In diesem Beispielcode verwenden wir die Funktion array_map(), um jeden Schlüsselnamen und den entsprechenden Wert in einem neuen Array neu zu kombinieren. In der Rückruffunktion verwenden wir [$score, $name], um ein neues Array zurückzugeben, das das entsprechende Schlüssel-Wert-Paar enthält. Als nächstes verwenden wir die Funktion array_combine(), um die neuen Schlüssel und Werte in einem neuen Array $new_student_scores neu zu kombinieren.

Zusammenfassung

In diesem Artikel haben wir vorgestellt, wie man den Schlüsselnamen und den Index eines Arrays in PHP ändert. Sie können integrierte Funktionen wie array_values(), array_combine() und array_column() verwenden oder eine foreach-Schleife verwenden, um die Schlüssel und Indizes des Arrays zu durchlaufen und manuell zu ändern. Unabhängig davon, für welche Methode Sie sich entscheiden, können Sie durch Ändern der Schlüsselnamen und Indizes des Arrays mehr Flexibilität und Kontrolle während der Entwicklung erhalten.

Das obige ist der detaillierte Inhalt vonSo ändern Sie den Schlüsselnamen oder Index eines PHP-Arrays. 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