Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]case array i pętla
Forum PHP.pl > Forum > Przedszkole
Fixer
słuchajcie przyciołem się trochę pomóżcie... wstydnis.gif

Potrzebuję mieć zmienną a nie stałą ilość instrukcji "case" jak to zrobić/przerobić?
chodzi o to, że mogę mieć sytuację gdzie $liczby[$n]

  1. <?php
  2.  
  3. switch ($pola["$kula"]) {
  4.    case ($pola["$kula"] == $liczby[0]):
  5.    case ($pola["$kula"] == $liczby[1]):
  6.    case ($pola["$kula"] == $liczby[2]):
  7.    case ($pola["$kula"] == $liczby[3]):
  8.    case ($pola["$kula"] == $liczby[4]):
  9.    case ($pola["$kula"] == $liczby[5]):
  10.    case ($pola["$kula"] == $liczby[6]):
  11.    case ($pola["$kula"] == $liczby[7]):
  12.    case ($pola["$kula"] == $liczby[8]):
  13.    case ($pola["$kula"] == $liczby[9]):
  14.    case ($pola["$kula"] == $liczby[10]):
  15.    case ($pola["$kula"] == $liczby[11]):
  16.        echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  17.        break;
  18.  
  19.    default:
  20.        echo $pola["$kula"] . '&nbsp;&nbsp;';
  21. }
  22. ?>
piotrooo89
pętla for.
Fixer
gdyby to było takie proste...
taka forma ma błąd składni...

  1. <?php
  2. switch ($pola["$kula"]) {
  3.                for ($max = 0; $max <= $max_kul; $max++ ) {
  4.                    case ($pola["$kula"] == $liczby[$max]):
  5.                    }
  6.  
  7.                    echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  8.                    break;
  9.                
  10.                default:
  11.                  echo $pola["$kula"] . '&nbsp;&nbsp;';
  12.  
  13.            }
  14. ?>
piotrooo89
a nie możesz tego na zwykłych if'ach zrobić? prościej by było.
Fixer
  1. <?php
  2. if ($pola["$kula"] == $liczby[0]) {
  3.                echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  4.            } else {
  5.                if ($pola["$kula"] == $liczby[1]) {
  6.                    echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  7.                } else {
  8.                    if ($pola["$kula"] == $liczby[2]) {
  9.                        echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  10.                    } else {
  11.                        if ($pola["$kula"] == $liczby[3]) {
  12.                            echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  13.                        } else {
  14.                            if ($pola["$kula"] == $liczby[4]) {
  15.                                echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  16.                            } else {
  17.                                if ($pola["$kula"] == $liczby[5]) {
  18.                                    echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  19.                                } else {
  20.                                    if ($pola["$kula"] == $liczby[6]) {
  21.                                        echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  22.                                    } else {
  23.                                        if ($pola["$kula"] == $liczby[7]) {
  24.                                            echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  25.                                        } else {
  26.                                            if ($pola["$kula"] == $liczby[8]) {
  27.                                                echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  28.                                            } else {
  29.                                                if ($pola["$kula"] == $liczby[9]) {
  30.                                                    echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  31.                                                } else {
  32.                                                    if ($pola["$kula"] == $liczby[10]) {
  33.                                                        echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  34.                                                    } else {
  35.                                                        if ($pola["$kula"] == $liczby[11]) {
  36.                                                            echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  37.                                                        } else {
  38.                                                            echo $pola["$kula"] . '&nbsp;&nbsp;';
  39.                                                        }
  40.                                                    }
  41.                                                }
  42.                                            }
  43.                                        }
  44.                                    }
  45.                                }
  46.                            }
  47.                        }
  48.                    }
  49.                }
  50.            }
  51. ?>


Chyba jednak nie było by prościej tongue.gif
piotrooo89
no to pętelka:

  1. <?php
  2. for ($i=0 ; $i<=$max ; $i++)
  3. {
  4. if ($pola['kula'] == $liczby[$i])
  5. {
  6. echo '<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;';
  7. }
  8. }
  9. ?>
ucho
http://pl.php.net/in_array
Z litości, bo bardziej chciałem tu link do jakiegoś obrazka z serii FacePalm wstawić tongue.gif
Fixer
thx

  1. <?php
  2. for ($kula = 1; $kula <= $max_kul; $kula++) {
  3.        if (in_array($pola["$kula"], $liczby)) {
  4.            echo ('<span class="czerwony">' . $pola["$kula"] . '</span>&nbsp;&nbsp;');
  5.        } else {
  6.            echo $pola["$kula"] . '&nbsp;&nbsp;';
  7.        }
  8. }
  9. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.