Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie die Funktion array_walk_recursive in PHP, um die Rückruffunktion auf mehrdimensionale Array-Elemente anzuwenden

So verwenden Sie die Funktion array_walk_recursive in PHP, um die Rückruffunktion auf mehrdimensionale Array-Elemente anzuwenden

WBOY
WBOYOriginal
2023-06-26 11:46:23519Durchsuche

In PHP kann die Funktion array_walk_recursive verwendet werden, um eine Rückruffunktion auf alle Elemente in einem mehrdimensionalen Array anzuwenden. In diesem Artikel wird die Verwendung der Funktion array_walk_recursive vorgestellt.

  1. Was ist ein mehrdimensionales Array?

In PHP können Arrays mehrdimensional sein, das heißt, ein Array kann ein anderes Array enthalten. Das folgende Array ist beispielsweise ein zweidimensionales Array:

$array = array(
    array('name' => 'john', 'age' => 20),
    array('name' => 'mary', 'age' => 25)
);
  1. array_walk_recursive-Funktion

array_walk_recursive-Funktion wird verwendet, um eine Callback-Funktion auf alle Elemente in einem mehrdimensionalen Array anzuwenden. Seine Syntax lautet wie folgt:

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

Parameterbeschreibung:

  • $array: das zu verarbeitende mehrdimensionale Array
  • $callback: die auf die Array-Elemente angewendete Callback-Funktion
  • $userdata: optionale Benutzerdaten, die an den Callback übergeben werden Funktion

Gibt bei Erfolg true zurück, andernfalls false.

  1. Verwendung der Funktion array_walk_recursive

Das Folgende ist ein Beispiel für die Verwendung der Funktion array_walk_recursive. Angenommen, wir haben ein mehrdimensionales Array, das die Namen und das Alter der Benutzer enthält, und wir möchten zu jedem Alter 10 hinzufügen und den Namen und das neue Alter jedes Benutzers ausgeben.

function add_age(&$item, $key) {
    if ($key == 'age') {
        $item += 10;
    }
}

$array = array(
    array('name' => 'john', 'age' => 20),
    array('name' => 'mary', 'age' => 25)
);

array_walk_recursive($array, 'add_age');

foreach ($array as $key => $value) {
    echo $value['name'] . ' ' . $value['age'] . '
'; }

In diesem Beispiel definieren wir eine Rückruffunktion add_age, die allen Altersgruppen 10 hinzufügt. Anschließend übergeben wir diese Rückruffunktion an die Funktion array_walk_recursive und übergeben ihr unser mehrdimensionales Array. Schließlich verwenden wir eine foreach-Schleife, um den Namen und das neue Alter jedes Benutzers auszugeben.

  1. Zusammenfassung

Die Funktion array_walk_recursive kann bequem eine Rückruffunktion auf alle Elemente in einem mehrdimensionalen Array anwenden. Dies ist sehr nützlich, wenn Sie mit mehrstufigen verschachtelten Arrays arbeiten, wodurch das Schreiben vieler wiederholter Codes vermieden werden kann. Mit dieser Funktion können wir verschiedene Vorgänge abschließen, z. B. Datenfilterung, Konvertierung usw.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Funktion array_walk_recursive in PHP, um die Rückruffunktion auf mehrdimensionale Array-Elemente anzuwenden. 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