Heim >Backend-Entwicklung >PHP-Problem >So ändern Sie den Schlüsselwert eines Arrays in PHP

So ändern Sie den Schlüsselwert eines Arrays in PHP

PHPz
PHPzOriginal
2023-04-18 10:25:41656Durchsuche

In PHP ist Array eine sehr leistungsfähige Datenstruktur, die große Datenmengen schnell speichern und darauf zugreifen kann. Während des Entwicklungsprozesses müssen wir häufig ein neues Array aus einem Array generieren und den Schlüsselwert jedes Elements des ursprünglichen Arrays ändern. Zu diesem Zeitpunkt müssen Sie einige PHP-Funktionen verwenden, um die Schlüsselwerte des Arrays zu ändern.

PHP bietet viele Methoden zum Ändern des Schlüsselwerts des Arrays. Hier sind einige häufig verwendete Methoden.

1. Verwenden Sie die Funktion array_combine.

Die Funktion array_combine ist eine in PHP integrierte Funktion, mit der der Schlüsselname eines Arrays als Schlüsselname verwendet werden kann eines neuen Arrays und der Wert des Arrays als Wert des neuen Arrays. Die Syntax dieser Funktion lautet wie folgt:

array_combine(array $keys , array $values ) : array

Diese Funktion verfügt über zwei Parameter: das ursprüngliche Schlüsselnamen-Array des Arrays, das geändert werden muss, und das geänderte Schlüsselnamen-Array. Wenn die Zahlen der beiden Arrays inkonsistent sind, wird „false“ zurückgegeben; andernfalls wird ein neues Array zurückgegeben.

Zum Beispiel:

$fruits = array("apple" => "red", "banana" => "yellow", "orange" => "orange");
$newKeys = array("a", "b", "c");
$newFruits = array_combine($newKeys, $fruits);
print_r($newFruits);

Ausführungsergebnis:

Array
(
    [a] => red
    [b] => yellow
    [c] => orange
)

Im obigen Code verwenden wir den Schlüsselnamen des $fruits-Arrays als Wert des neuen Arrays wird unter Verwendung von $newKeys als Schlüsselname des neuen Arrays das Array $newFruits generiert.

2. Verwenden Sie die Funktion array_walk.

Die Funktion array_walk ist auch eine der integrierten Funktionen von PHP. Sie kann jedes Element im Array durchlaufen und eine benutzerdefinierte Rückruffunktion aufrufen Ändern Sie den Schlüsselnamen.

Die Syntax dieser Funktion lautet wie folgt:

array_walk(array &$array , callable $callback [, mixed $userdata = NULL ] ) : bool

Der erste Parameter dieser Funktion ist das Array, das geändert werden muss, und der zweite Parameter ist die benutzerdefinierte Rückruffunktion . Diese Funktion dient zum Ändern der Schlüsselnamen im ursprünglichen Array. Der dritte Parameter sind optionale Benutzerdaten.

Zum Beispiel:

$fruits = array("apple" => "red", "banana" => "yellow", "orange" => "orange");
function changeKey(&$value, $key, $prefix) {
    $value = $prefix . $key;
}
array_walk($fruits, 'changeKey', 'fruit_');
print_r($fruits);

Ausführungsergebnis:

Array
(
    [fruit_apple] => red
    [fruit_banana] => yellow
    [fruit_orange] => orange
)

Im obigen Code definieren wir eine benutzerdefinierte Rückruffunktion changeKey, die Die Funktion empfängt drei Parameter: eine Referenz auf das Array-Element, der Schlüsselname des Elements und Benutzerdaten. In dieser Rückruffunktion fügen wir dem ursprünglichen Schlüsselnamen das Präfix „fruit_“ hinzu.

3. Die Funktion array_map

funktion array_map ist ebenfalls eine der Array-Methoden. Es kann mehrere Arrays als Parameter akzeptieren und sie an eine Callback-Funktion übergeben. In der Rückruffunktion können wir die Schlüssel im ursprünglichen Array ändern, um ein neues Array zu generieren.

Die Syntax dieser Funktion lautet wie folgt:

array_map(callable $callback , array $array1 [, array $array2, ... ] ) : array

Der erste Parameter dieser Funktion ist die Callback-Funktion, die die Elemente der oben genannten mehreren Arrays als Parameter empfängt und gibt ein neues Array zurück. Beachten Sie, dass alle Parameterarrays die gleiche Anzahl an Elementen haben müssen.

Zum Beispiel:

$fruits = array("apple" => "red", "banana" => "yellow", "orange" => "orange");
$keysSuffix = array("1", "2", "3");
$newKeys = array_map(function($key, $suffix) {
    return $key . $suffix;
}, array_keys($fruits), $keysSuffix);
$newFruits = array_combine($newKeys, $fruits);
print_r($newFruits);

Ausführungsergebnis:

Array
(
    [apple1] => red
    [banana2] => yellow
    [orange3] => orange
)

Im obigen Code verwenden wir die Funktion array_keys, um den Schlüsselnamen des Originals zu erhalten Array verwenden Sie die Funktion array_map, um das Präfixsuffix zum ursprünglichen Schlüsselnamen hinzuzufügen. Schließlich verwenden wir die Funktion array_combine, um den neuen Schlüsselnamen und den ursprünglichen Wert in einem neuen Array zu kombinieren.

Zusammenfassend lässt sich sagen, dass wir mehrere Methoden verwenden können, um Array-Schlüsselwerte in PHP zu ändern. Jede Methode hat ihre eigenen Vor- und Nachteile. Bei der Verwendung müssen wir basierend auf der tatsächlichen Situation die am besten geeignete Methode auswählen, um unsere Bedürfnisse zu erfüllen.

Das obige ist der detaillierte Inhalt vonSo ändern Sie den Schlüsselwert eines 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