19. oktober 2013 - 23:32
Der er
1 kommentar
Tjek om data fra en array er i en anden array
Jeg har en bruger array som ser ud som følger: Array ( [0] => Array ( [id] => 1 [navn] => Niels [by] => Århus ) [1] => Array ( [id] => 2 [navn] => Martin [by] => Odense ) [2] => Array ( [id] => 3 [navn] => Christian [by] => Herning ) .... osv ) Derud over har jeg en array, med nogle udvalgte byer: Array ( [0] => Array ( [by] => Århus ) [1] => Array ( [by] => Odense ) ) Jeg vil gerne lave et tjek, om byerne i array 2 er i array 1. Så hvis en af brugerne bpr i byen. Vil byen blive skrevet med rødt. Lige pt udskriver jeg bruger data med en foreach lykke, og prøver at finde match med in_array(). Det virker bare ikke. Jeg har gjort følgende if(in_array($arrayet['by'], $arrayto)){}
Annonceindlæg fra Hitachi
”Forskellighed gør os stærkere!”
Diversitet er ikke kun buzzwords og politisk korrekthed, men et spørgsmål om at alle føler sig godt tilpas og kan yde deres bedste.
31. januar 2025
20. oktober 2013 - 01:30
#1
Det maa kunne goeres paa mange maader, men her er en: <?php function all_in($needle, $haystack, $key) { return count(array_uintersect($needle, $haystack, function($v1, $v2) use($key) { return $v1[$key] == $v2[$key] ? 0 : 1; })) == count($needle); } function test($needle, $haystack) { if(all_in($needle, $haystack, 'by')) { echo "Found\r\n"; } else { echo "Not found\r\n"; } } $haystack = array(array('id' => 1, 'navn' => 'Niels', 'by' => 'Århus'), array('id' => 2, 'navn' => 'Martin', 'by' => 'Odense'), array ('id' => 3, 'navn' => 'Christian', 'by' => 'Herning')); $needle1 = array(array ('by' => 'Århus'), array ('by' => 'Odense')); $needle2 = array(array ('by' => 'Århus'), array ('by' => 'Esbjerg')); test($needle1, $haystack); test($needle2, $haystack); ?>