Autor | Zpráva | ||
---|---|---|---|
Sylar Profil |
Zdravím,
je možné ve switchi přeskakovat mezi jednotlivými casy v rámci jednoho cyklu? Mám na mysli switch($stranka) { case "1": if (parametr == parametr) echo "potřebuji nyní skočit do case 2"; else echo "pokračuji v tomto case"; break; case "2": // kód break; default: break; } |
||
Keeehi Profil |
#2 · Zasláno: 14. 2. 2012, 22:50:25
switch($stranka) { case "1": case "2": if (parametr == parametr || $stranka == "2") { // kód druhého case else { // kód prvního case } break; default: break; } |
||
Sylar Profil |
#3 · Zasláno: 15. 2. 2012, 00:00:24
Keeehi:
to je samozřejmě možnost, nicméně ten druhý CASE je tam i pro jiné případy ... potřeboval bych nějakou obdobu příkazu "goto" z jiných jazyků ... |
||
Keeehi Profil |
Sylar:
Goto v PHP existuje, ale není žádný důvod to používat. Řekl bych, že nevíš jak funguje ten můj kód. Pokusím se ti to osvětlit. možnost 1 - pokud je v $stranka 2, provede se blok příkazů //kód druhého case a nic jiného
možnost 2 - pokud je v $stranka 1 a zároveň parametr == parametr je pravda, provede se blok příkazů //kód druhého case a nic jiného
možnost 3 - pokud je v $stranka 1 a zároveň parametr == parametr je nepravda, provede se blok příkazů //kód prvního case a nic jiného
|
||
Alphard Profil |
#5 · Zasláno: 15. 2. 2012, 00:21:27
Keeehi:
Čekal jsem, kdo to prozradí, o goto a eval() se nemluví :-) Sylar: Jestli říkáte, že se nějaká část kódu opakuje, tak by často měla být nějakým způsobem vyčleněna, třeba do funkce. |
||
Sylar Profil |
#6 · Zasláno: 15. 2. 2012, 15:58:10
máte pravdu, nevšiml jsem si toho prvního case, pochopil jsem ten kód špatně. Díky za info, tohle bude OK.
|
||
Časová prodleva: 11 let
|
0