Hallo,
Ich dreh hier gerade durch
Anhand der Werte nach p_p kann ich nachvollziehen, dass $ind immer den korrekten Wert hat.
Durch das setzen von $prio stelle ich sicher, dass $prio den Wert 1 hat (zum testen).
Wenn ich __getHeaderImage(1) aufrufe wird wie erwartet p_p1_a.gif zurückgegeben.
Rufe ich die Funktion jedoch so auf:
Bekomme ich folgende Ausgabe:
p_p1_n.gif
p_p2_n.gif
p_p3_n.gif
An dem p1, p2, p3 sieht man ja dass die Funktion definitiv mit den richtigen Argumenten aufgerufen wird! Nur erkennt PHP nicht mehr dass $ind == $prio ist !
Der Quellcode ist auf relevante Teile gekürzt. ICh versichere euch aber, dass ich nirgendwo ausversehen $prio umsetze oder ähnliches.
Ich dreh hier gerade durch
PHP-Code:
$prio = 1;
function __getHeadImage($ind) {
if ($prio == $ind)
return 'p_p'.$ind.'_a.gif';
else
return 'p_p'.$ind.'_n.gif';
//return "p_p".$ind."_".( ($ind == $prio) ? "a" : "n").".gif";
}
Durch das setzen von $prio stelle ich sicher, dass $prio den Wert 1 hat (zum testen).
Wenn ich __getHeaderImage(1) aufrufe wird wie erwartet p_p1_a.gif zurückgegeben.
Rufe ich die Funktion jedoch so auf:
PHP-Code:
$i = 1;
while ($i<4) {
echo __getHeaderImage($i);
$i++;
}
p_p1_n.gif
p_p2_n.gif
p_p3_n.gif
An dem p1, p2, p3 sieht man ja dass die Funktion definitiv mit den richtigen Argumenten aufgerufen wird! Nur erkennt PHP nicht mehr dass $ind == $prio ist !
Der Quellcode ist auf relevante Teile gekürzt. ICh versichere euch aber, dass ich nirgendwo ausversehen $prio umsetze oder ähnliches.
Kommentar