Ik haal wat gegevens uit een externe bron, welke in een array worden gezet. Vervolgens wil ik die array controleren met wat er in mijn database zit.
Voorbeeld van de array:
$allecats =
Array ( [0] => stdClass Object ( [id] => 20 [name] => Boeketten [description] => ) [1] => stdClass Object ( [id] => 21 [name] => Romantisch [description] => ) [2] => stdClass Object ( [id] => 25 [name] => Bloemen en wijn [description] => ) [3] => stdClass Object ( [id] => 22 [name] => Rozen [description] => ) [4] => stdClass Object ( [id] => 42 [name] => Geboorte [description] => ) [5] => stdClass Object ( [id] => 19 [name] => Rouwstukken [description] => ) [6] => stdClass Object ( [id] => 23 [name] => Bezorg buiten NL [description] => ) )
|
|
Het gaat mij om het id wat er meegegeven wordt, bij Boeketten is dat 20. Ik heb het getal 20 ook in mijn database staan en ik wil simpelweg mijn database vergelijken met de array. Dus als nummer 40 in mijn database staat, maar niet in de array, wil ik daar wat mee doen.
Mijn database controleer ik met een while lus:
while()
{
echo $id ."<br />";
}
|
|
Dat geeft de volgende output:
20
21
22
23
40
Dat betekent dat 40 wel in mijn database staat, maar niet in de array. Mij leek in_array() de beste oplossing. Simpelweg controleren of mijn id in de array staat, dus:
while()
{
echo $id ."<br />";
if(in_array($id, $allecats)) //$allecats is de array
{
echo "staat erin! <br />";
}
else
{
echo "staat er NIET in! <br />";
}
}
|
|
Helaas krijg ik overal het resultaat dat het er niet in staat. Zelfs als ik handmatig deze uitvoer:
Dat geeft nog steeds een leeg resultaat. Wat doe ik niet goed?