Scripts
Arrayelementen wissen
Hallo PHP vrienden, laatst had ik in een script nodig dat ik een gegeven element uit een array wilde kunnen verwijderen. Wat schetst mijn verbazing? Daar is geen handige standaardfunctie voor! Je hebt array_shift (om het eerste element te verwijderen), array_slice (om een "plakje" te verwijderen, maar dan moet je de offset weten!), array_pop (om het laatste element te verwijderen), maar er is geen functie om een bepaalde value of een bepaalde key te wissen! Na een korte zoekactie kwam ik deze twee tegen:
arrayelementen-wissen
<?php
function array_remove_value ($array, $value) {
$holding = array ();
foreach ($array as $k => $v) {
if ($value != $v) {
$holding[$k] = $v;
}
}
return $holding;
}
function array_remove_key ($array, $key) {
$holding = array ();
foreach ($array as $k => $v) {
if ($key != $k) {
$holding[$k] = $v;
}
}
return $holding;
}
?>
ze doen precies wat ze zeggen; een array-element verwijderen waarvan de key of de value met het opgegeven argument overeen komt.
Enjoy!
Jan Koehoorn
Reacties
0