Tutorials
Einige nützliche Hilfen und Code-Schnipsel, die ich immer wieder benötige und deshalb hier für alle sammle.
Zurück zur Übersicht
PHP in_array Funktion für multidimensionale Arrays
#Tutorials#PHP
Für ein neues Projekt von mir, brauchte ich kürzlich eine Funktion, die guckt, ob ein bestimmter String in einem Multidimensionen Array vorkommt. Die normale PHP-Funktion in_array() konnte ich dafür nicht nutzen, da diese nur eindimensionale Arrays beherrscht. Hier habe ich also eine Funktion die alle arrays meistern kann ;)
function in_array_r($needle, $haystack, $strict = true) {
foreach ($haystack as $item) {
if (($strict ? $item === $needle : $item == $needle) || (is_array($item) && in_array_r($needle, $item, $strict))) {
return true;
}
}
return false;
}
Beispiel:
$fruits = array (
"fruits" => array("a" => "Orange", "b" => "Banane", "c" => "Apfel")
);
if(in_array_r('Orange', $fruits )){
// returns true
}
Kommentare
Toll wäre es wenn die Funktion noch den zugehörigen key zurückliefert.
die in_array Funktionen geben an sich nur boolean Werte zurück. Ich habe aber hier schonmal eine Methode beschrieben, wie mann es bei eindimensionalen Arrays macht:
http://www.andrerinas.de/tutorials/php-den-key-bei-der-in-array-funktion-bekommen-falls-etwas-gefunden-wurde.html
Vielleicht hilft dir das weiter :)
Grüße
André
Hinterlasse einen Kommentar