Hoi mensen,

Is het mogelijk om alle values van een array te bewerken... en dan bedoel ik ook de values die in een array binnen die array zitten?

Voorbeeld:

<?php

$array = array('foo', 'bar', 'baz' => array('bar' => 'foobar', 'foobaz'));

?>
Wat ik me dus afvraag is of het mogelijk is (en zo ja hoe) om alle values aan te passen. Stel ik wil achter iedere value een X zetten, dan zou de aangepaste array er dus zo uit komen te zien:

<?php

$array = array('fooX', 'barX', 'baz' => array('bar' => 'foobarX', 'foobazX'));

?>
Kan zoiets?
Kijk eens naar [php]array_walk_recursive[/php]

Voorbeeld
<?php
$array = array(
'abc',
'def',
'ghi' => array(
'jkl',
'mno',
),
);

function demoWalk( &$item , $key){
$item = $item .'X';
}

print_r($array);
array_walk_recursive($array, 'demoWalk');
print_r($array);
?>
Dat ziet er goed uit!

Ik ben wel benieuwd... als ik nu binnen een class method deze opzet wil gebruiken, moet ik dan binnen die method een function maken? Of zijn er nog andere mogelijkheden?
@Dos: kan je een voorbeeld geven hoe dat op basis van het voorbeeld van TJVB eruit zou zien met zo'n "lambda" ?

Reageren