4.26 Eine Funktion auf jedes Element eines Arrays anwenden
Problem
Sie möchten eine Funktion oder Methode auf jedes Element in einem Array anwenden. Auf diese Weise können Sie die Eingabedaten der gesamten Menge auf einmal transformieren.
Lösung
Nutzen Sie array_walk( )
:
function escape_data(&$value, $key) { $value = htmlentities($value, ENT_QUOTES); } $names = array('firstname' => "Baba", 'lastname' => "O'Riley"); array_walk($names, 'escape_data'); foreach ($names as $name) { print "$name"; } Baba O'Riley
Und für geschachtelte Daten array_walk_recursive( )
:
function escape_data(&$value, $key) { $value = htmlentities($value, ENT_QUOTES); } $names = array('firstnames' => array("Baba", "Bill"), 'lastnames' => array("O'Riley", "O'Reilly")); array_walk_recursive($names, ...
Get PHP 5 Kochbuch, Third Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.