Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: pętla FOR, ale inna niz standardowa, da się?
Forum PHP.pl > Forum > PHP
miedzna
Mamy pętlę for($i=8;$i<=16;$i++){
echo $i;
}

ale czy da się zrobić tak, żeby pętla wygenerowała zmienna $i z przedział od 8 do 10 a potem od 13 do 16, czyli z pominięciem 11 i 13?

Chodzi o to, że mam 2 listy rozwijane <select> z początkiem i końcem godziny spotkania, które generowane są przez pętli for, ale jeżeli np godzina od 10 do 13 jest zajęta, to jakoś deaktytować tę godzinę, może jakieś inne pomysły?

Pozdrawiam
nospor
  1. <?
  2.  for($i=8;$i<=16;$i==10 ? $i=13 : $i++){
  3. echo $i;
  4. }?>


i uzywaj bbcode
php programmer
ewentualnie:

  1. <?php
  2.  
  3.  
  4. for ($i=8;$i<=16;$i++){
  5.  if ($i==10 or $i==13) continue;
  6.  ....
  7.  }
  8.  
  9.  
  10.  
  11. ?>
nospor
@php programmer jak nie testujesz swoich skryptów, to ich nie umieszczaj tongue.gif

chodzilo o przedzialy 8-10, 13-16

twoj skrypt wygeneruje 8-9, 11-12,14-16
kszychu
ewentualnie:
  1. <?php
  2.  
  3. $godziny = array(8,9,10,12,14,15,16);
  4. foreach($godziny as $godzina)
  5.  echo $godzina;
  6. ?>


IMHO to najlepsze rozwiązanie do wygenerowania dowolnej listy. Definiujesz sobie wcześniej odpowiednią tablicę a później lecisz kolejno po wszystkich jej elementach nie zaprzątając sobie głowy warunkami.
php programmer
myslalem ze ma omijac 10 i 13
a tak wogole to autor przeczy sam sobie

Cytat
przeział od 8 do 10 a potem od 13 do 16,
czyli z pominięciem 11 i 13?
miedzna
Cytat(php programmer @ 2006-01-18 14:07:39)
myslalem ze ma omijac 10 i 13
a tak wogole to autor przeczy sam sobie

Fakt, pomyliłem się, chodziło o przedział 10-12
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.