Sam: 0 = Text?

Beitrag lesen

Moin, ich habe hier ein Problem, dass so lächerlich wirkt und ich doch keine echte Lösung finde:

Ich habe ein Array: $values = array('bla', 3, 4 , 0);

Diesen Array gebe ich mit einer Schleife als select Menü in HTML aus. Je nachdem was gewählt wurde setze ich dann ein selected="selected" ins jeweilige option Feld:

if ($_POST['test'] == $values[$i]) ...

Allerdings will PHP ums Verrecken niocht einsehen, dass 'bla' != 0 ist. Ist entweder 'bla' oder 0 gewählt werden beide markiert. Ich habe auch bereits versucht die Zahlen unter Anführungszeichen zu setzen (einfache und doppelte), das macht keinen Unterschied. Erst wenn ich so vergleiche kapiert PHP was Sache ist:

if ("$_POST['test']" == "$values[$i]") ...

Kann mir das jetzt bitte einmal jemand erklären? Hier muss irgendwo ein absolut behinderter Denkfehler meinerseits liegen, aber ich komm nicht drauf.

PHP ist 4.3.6 und ich stoße zum ersten Mal auf so ein seltsames Problem.