[#] Nie całkiem zwykły switch

( Ostatnio zmieniony sob., 05/07/2008 - 13:14 )
 
<?php

switch ($i) {
  case 0:
  case 1:
    echo 'i jest mniejsze od 2 ale dodatnie czyli 0 lub 1';
    break;

  case 'zonk':
    echo 'i jest równe słowu zonk';
    break;

  case (($i * 4) >= 24):
    echo 'i jest równe lub większe od 24, najmniejsza jego wartość to 6';
    break;

  case ($i > 4):
    echo 'i jest wieksze od 4';
    break;

  default:
    echo 'Domyślna akcja gdy nic nie pasuje';
    break;
}

?>
<?php

$x = 1;
switch(true) {

  case $x === "1":
    echo "string 1";
    break;

  case $x === "b":
    echo "b";
    break;

  default:
    echo "default";
}

?>

Powyższy kod zwróci default, ponieważ sprawdzamy również typ zmiennej nie tylko jej wartość! (użycie === zamiast == )

<?php

function check_1($var) {
  return ($var % 2) ? false : true;
}

function check_2($var) {
  return ($var > 7) ? true : false;
}


$x = 6;
switch (false) {
  case check_1($x):
  case check_2($x):
    echo 'Wystąpił błąd !';
    break;

  default:
    echo 'Wszystko ok';
    break;
}

?>
Twoja ocena: Brak Średnio: 5 (2 głosy)

Dodaj nową odpowiedź

Informacja:

Osoby zamieszczające wypowiedzi naruszające prawo lub prawem chronione dobra osób trzecich, mogą ponieść z tego tytułu odpowiedzialność karną lub cywilną. Upewnij się, że twoja wypowiedź nie godzi w niczyje mienie.

  • Internal paths in single or double quotes, written as "internal:node/99", for example, are replaced with the appropriate absolute URL or path. Paths to files in single or double quotes, written as "files:somefile.ext", for example, are replaced with the appropriate URL that can be used to download the file.
  • Adresy internetowe są automatycznie zamieniane w odnośniki, które można kliknąć.
  • Dozwolone znaczniki HTML: <strong> <blockquote> <code>
  • Znaki końca linii i akapitu dodawane są automatycznie.

Więcej informacji na temat formatowania

Łapirobot
Proszę odpowiedzieć
N
L
y
n
S
z
H
t
D
6
Enter the code without spaces and pay attention to upper/lower case.