182 of 410 menu

Funktion array_walk_recursive

Die Funktion array_walk_recursive wendet eine benutzerdefinierte Funktion auf alle Elemente eines mehrdimensionalen Arrays an. Sie gibt true bei erfolgreichem Abschluss oder false im Fehlerfall zurück. Als ersten Parameter akzeptiert die Funktion ein Array und als zweiten - einen Callback.

An den Callback werden zwei Parameter übergeben. Als erster Parameter wird der Wert des Array-Elements übergeben, und als zweiter - der Schlüssel.

Das an die Funktion übergebene Array selbst wird nicht verändert. Dies kann jedoch durch die Übergabe des Elements als Referenz erreicht werden.

Syntax

array_walk_recursive(array|object &$array, callable $callback, mixed $arg = null): bool

Beispiel

Lassen Sie uns ein mehrdimensionales Array durchlaufen und seine Schlüssel und Elemente ausgeben:

<?php $arr = [ 'a' => 1, 'b' => 2, 'c' => [ 'd' => 3, 'e' => 4, ], ]; array_walk_recursive($arr, function($elem, $key) { echo $key . ' ' . $elem . '<br>'; }); ?>

Ergebnis der Codeausführung:

'a 1' 'b 2' 'd 3' 'e 4'

Beispiel

Lassen Sie uns ein Array durchlaufen und seine Elemente quadrieren:

<?php $arr = [ 'a' => 1, 'b' => 2, 'c' => [ 'd' => 3, 'e' => 4, ], ]; array_walk_recursive($arr, function(&$elem, $key) { $elem = $elem ** 2; }); var_dump($arr); ?>

Ergebnis der Codeausführung:

[ 'a' => 1, 'b' => 4, 'c' => [ 'd' => 9, 'e' => 16, ], ];

Siehe auch

  • die Funktion array_walk,
    die eine Funktion für Array-Elemente aufruft
  • die Funktion array_map,
    die eine Funktion auf Array-Elemente anwendet
  • die Funktion array_filter,
    die ein Array filtert
  • die Funktion array_reduce,
    die ein Array reduziert
Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen