Autor | Zpráva | ||
---|---|---|---|
Swww Profil * |
Pokud mám switch:
case 1: case 2: case 3:... a v něm se provádí case 1, můžu nějak udělat aby to skočilo potom na case 3, tedy přeskočilo case 2? (bez toho aby prohazoval pořadí těch case) díky Moderátor Joker: Titulek „funkce switch“ nevystihuje podstatu dotazu. Příště zkus prosím vymyslet lepší.
|
||
Nox Profil |
#2 · Zasláno: 22. 7. 2010, 09:48:08
switch není funkce ale jazyková struktura
není, navíc by to mohlo být docela nepřehledné když by se nějak skákalo různě uvnitř switche |
||
Joker Profil |
#3 · Zasláno: 22. 7. 2010, 10:16:11
Swww:
Ani nevím, jestli by fungovalo goto, v PHP se nedá skákat dovnitř switche a cyklu, ale nevím jak uvnitř switche přes jeho větve. Každopádně, goto je zlo a kdo ho používá, toho sežere raptor (je to i v manuálu) :-) Jinak ale to popsané v prvním příspěvku by v PHP šlo udělat, protože PHP umožňuje „propadávání“ větvemi switche, stačí na konec nedat break; Příklad: switch($cislo) { case 2: dvojka(); break; case 1: jednicka(); // není break, takže se pokračuje další větví case 3: trojka(); break; // tady se skončí } $cislo = 1 => provede se jednicka() a trojka() $cislo = 2 => provede se dvojka() $cislo = 3 => provede se trojka() |
||
Swww Profil * |
#4 · Zasláno: 22. 7. 2010, 10:18:02
No problém je v tom že já jednou potřebuju aby to šlo 1 3, a pak jindy zase 2 3.. takže přehozením si moc nepomůžu. Ale je to jedno, já tam strčím podmínku a je to :)
|
||
nightfish Profil |
#5 · Zasláno: 22. 7. 2010, 10:40:20
Swww:
„No problém je v tom že já jednou potřebuju aby to šlo 1 3, a pak jindy zase 2 3.. takže přehozením si moc nepomůžu. Ale je to jedno, já tam strčím podmínku a je to :)“ Něco mi říká, že použití switche v tomto případě asi nebude vhodné. Pověz nám, čeho se snažíš dosáhnout, třeba vymyslíme vhodnější řešení. |
||
Časová prodleva: 14 let
|
0