0 >= 105 returnerer TRUE
Hej EksperterJeg har efterhånden set mig godt og grundigt blind på følgende kodestump:
function barimg ()
{
$di = 0;
switch($di)
{
case ($di >= 105): $t = '0-100plus'; break;
case ($di >= 100): $t = '0-105'; break;
case ($di >= 90): $t = '0-100'; break;
case ($di >= 80): $t = '0-90'; break;
case ($di >= 70): $t = '0-80'; break;
case ($di >= 60): $t = '0-70'; break;
case ($di >= 50): $t = '0-60'; break;
case ($di >= 40): $t = '0-50'; break;
case ($di >= 30): $t = '0-40'; break;
case ($di >= 20): $t = '0-30'; break;
case ($di >= 10): $t = '0-20'; break;
case ($di > 0): $t = '0-10'; break;
default: $t = '0'; break;
}
return "index_".$t.".gif?";
}
Ovenstående returnerer 'index_0-100plus.gif' når site kaldes fra iPhone Safari.
Ved kald fra andre browsere inkl. androids returneres korrekt 'index_0.gif'.
Har undersøgt cache. Ændringer i koden trænger igennem.
Jeg er decideret mystificeret omkring hvorfor Safari på iPhone får funktionen til at returnereforkert værdi. Eksemplet for oven fejler på trods af at $di sættes explicit til 0
Benytter Snoopy til at vise kildekode på iPhone Safari, hvis nogen skulle undre sig over hvordan det kan lade sig gøre.
Håber i kan hjælpe, da ovenstående efter min bedste overbevisning ikke burde give forskellige resultater afhængig af browser og i særdeleshed ikke pga. Scope.
Derfor 200 points til den der kan knække nøden for mig.