Mehrere gängige Möglichkeiten, den Wert von PHP-Arrays zu ändern

PHPz
Freigeben: 2023-04-12 10:26:51
Original
615 Leute haben es durchsucht

PHP-Array ist ein sehr verbreiteter und wichtiger Datentyp, der häufig in der Webentwicklung und anderen Programmierbereichen verwendet wird. Wenn wir mit komplexen Datenstrukturen und Geschäftslogik arbeiten, müssen wir normalerweise die Werte im Array ändern, und PHP bietet auch verschiedene flexible Möglichkeiten, dieses Ziel zu erreichen.

Im Folgenden stellen wir einige gängige Methoden zum Ändern von PHP-Array-Werten vor und erläutern deren Implementierung und Verwendungsszenarien anhand von Beispielen.

  1. Den Array-Elementwert direkt ändern

Der direkteste Weg besteht darin, direkt auf das Array-Element zuzugreifen und dann seinen Wert zu ändern. Der folgende Code ändert beispielsweise das zweite Element (d. h. „Strawberry“) im Array $fruits in „Banane“:

$fruits = array("apple", "strawberry", "orange");
$fruits[1] = "banana";
print_r($fruits);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)
Nach dem Login kopieren

Diese Methode ist einfach und direkt und eignet sich zum einfachen Ändern ein Elementwert, eignet sich jedoch nicht für Szenarien, die Operationen an einer großen Anzahl von Elementen erfordern. Darüber hinaus müssen Sie beim direkten Ändern eines Array-Elements sicherstellen, dass das Element vorhanden ist, da sonst ein Fehler „Undefinierter Offset“ auftritt.

  1. Elementwert durch Referenz ändern

Zusätzlich zum direkten Ändern des Array-Elementwerts können Sie den Wert des Elements auch durch Referenz ändern. Dieser Ansatz vermeidet „undefinierte Offset“-Fehler und funktioniert gleichermaßen gut für Änderungen an einzelnen oder mehreren Elementwerten.

Zum Beispiel ändert der folgende Code das 1. und 3. Element in $fruits in „Birne“ und „Grapefruit“:

$fruits = array("apple", "strawberry", "orange");
$fruit1 =& $fruits[0];
$fruit2 =& $fruits[2];
$fruit1 = "pear";
$fruit2 = "grapefruit";
print_r($fruits);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Array
(
    [0] => pear
    [1] => strawberry
    [2] => grapefruit
)
Nach dem Login kopieren

Beachten Sie, dass hier das Referenzzeichen & hinzugefügt werden muss, andernfalls $ Fruit1 und $fruit2 sind nur Kopien der entsprechenden Elemente in $fruits, und das Ändern ihrer Werte hat keine Auswirkungen auf das ursprüngliche Array.

  1. Verwenden Sie die foreach-Schleife, um Elementwerte zu ändern.

Wenn mehrere Elemente im Array geändert werden müssen, können wir die foreach-Schleife verwenden, um das Array zu durchlaufen und die Werte der Array-Elemente zu ändern. Der folgende Code ändert beispielsweise alle Elemente in $fruits in ihre englische Bedeutung:

$fruits = array("苹果", "草莓", "橙子");
$english = array("apple", "strawberry", "orange");
foreach ($fruits as &$fruit) {
    $fruit = $english[array_search($fruit, $fruits)];
}
print_r($fruits);
Nach dem Login kopieren

Das Ausgabeergebnis lautet:

Array
(
    [0] => apple
    [1] => strawberry
    [2] => orange
)
Nach dem Login kopieren
Nach dem Login kopieren

Der Schlüssel hier besteht darin, die Referenz &$fruit zu verwenden, um den Elementwert zu ändern, und die Funktion array_search findet ihn Der entsprechende Wert im Originalarray ist der englische Wert von und weist ihn dann $fruit zu.

  1. Verwenden Sie Array-Funktionen, um Elementwerte zu ändern.

PHP verfügt über viele integrierte Array-Funktionen, mit denen verschiedene Vorgänge implementiert werden können, einschließlich der Änderung von Array-Elementen. Zum Beispiel:

  • array_map-Funktion: Wendet die angegebene Rückruffunktion auf jedes Element des Arrays an und gibt ein neues Array zurück.
  • array_walk-Funktion: Wendet eine benutzerdefinierte Funktion auf jedes Element des Arrays an.
  • array_replace-Funktion: Ersetzen Sie den Wert desselben Schlüsselnamens im vorherigen Array durch den Wert des folgenden Arrays.

Das folgende Codebeispiel zeigt, wie die Funktion array_map verwendet wird, um die chinesischen Namen der Elemente im Array $fruits ins Englische zu konvertieren:

$fruits = array("苹果", "草莓", "橙子");
$english = array("apple", "strawberry", "orange");
$fruits_en = array_map(function($fruit) use ($english) {
    return $english[array_search($fruit, $english)];
}, $fruits);
print_r($fruits_en);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Array
(
    [0] => apple
    [1] => strawberry
    [2] => orange
)
Nach dem Login kopieren
Nach dem Login kopieren

Die Funktion array_map verwendet hier eine anonyme Funktion als Ein Parameter, der einen Parameter $fruit akzeptiert, den entsprechenden englischen Namen basierend auf dem Array $english erhält und schließlich den Elementwert im neuen Array zurückgibt.

Kurz gesagt, PHP-Arrays bieten eine Vielzahl von Methoden zum Ändern von Elementwerten. Wir können die geeignete Methode auswählen, um je nach Bedarf und Szenario zu arbeiten. Der kompetente Einsatz dieser Methoden kann die Effizienz und Flexibilität der PHP-Entwicklung erheblich verbessern.

Das obige ist der detaillierte Inhalt vonMehrere gängige Möglichkeiten, den Wert von PHP-Arrays zu ändern. 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