Switch >= funktioniert nicht ?
henrky
- php
Halli Hallbo ... ich habe folgendes Problem :
Ich habe eine etwas größere Switchschaltung gebastelt - nun triggert jedoch sobald $abc 0 ist das ganze direkt bei der ersten >= Schaltung. Wie kann das sein ?
---------------------------------------------------------------------
switch ($abc) {
case ($abc >= 31234571974) : $xyz=55;$next=0;break;
case ($abc >= 21321654781) : $xyz=30;$next=31234571974-$abc;break;
case ($abc >= 14988914984) : $xyz=10;$next=21321654781-$abc;break;
...
...
...
case ($abc < 123456) : $xyz=1; $next=654321-$abc;break;
}
$nextlvl = number_format($next , 0 , ',' , '.');
---------------------------------------------------------------------
Wenn dort doch nun steht case (0 >= 31234571974) - so dürfte das ganze doch normalerweise nicht triggern oder o_O
Ansich müsste es doch beim letzten Eintrag triggern oder wie seht ihr das ?
euer
Henryk
echo $begrüßung;
Ich habe eine etwas größere Switchschaltung gebastelt - nun triggert jedoch sobald $abc 0 ist das ganze direkt bei der ersten >= Schaltung. Wie kann das sein ?
switch ($abc) {
$abc enthält 0, was einem false entspricht.
case ($abc >= 31234571974) : $xyz=55;$next=0;break;
0 >= 31234571974 ergibt false
Das false aus switch und das false aus dem case stimmen überein, damit ist die Bedingung erfüllt.
echo "$verabschiedung $name";
Hell-O!
Das false aus switch und das false aus dem case stimmen überein, damit ist die Bedingung erfüllt.
Ich ergänze, dass ein switch(true) das Problem umgeht.
Siechfred