Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]pętla z godzinami
Forum PHP.pl > Forum > Przedszkole
@rtur
Próbuję zrobić listę z godzinami, Pierwszą cyfrą miałaby być aktualna godzina, ostatnia 24 godziny wcześniej, czy istnieje jakiś prostszy sposób, czy najprościej jest połączyć 2 pętle for. Jedna liczy od X=aktualna_godzina do 0, druga 23 do Y=aktualna_godzina+1;
mmmmmmm
  1. $godz=15;
  2. for($i=23;$i>=0;$i--)
  3. {
  4. echo ($godz+$i)%24;
  5. echo PHP_EOL;
  6. }
@rtur
Dzięki, po drobnych modyfikacjach działa tak jak chciałem.
  1. $godz=date('H')+1;
  2. for($i=23;$i>=0;$i--)
  3. {
  4. $czas .= str_pad(($godz+$i)%24,2,'0',STR_PAD_LEFT).PHP_EOL;
  5. }
  6. echo $czas;


Próbuje jeszcze dodać jakiś tekst do zmiennej $czas w momencie kiedy godzina na serwerze będzie odpowiadać liczbie ze zmiennej i nie wiem jak sprawdzić czy godzina serwera = liczba ze zmiennej $czas...
Na chwile obecną mam coś takiego i nie działa, pokazuje klasę godzinę później.
  1. function lista_24h(){
  2. $godz=date('H')+1;
  3. $czas ='<ul>'.PHP_EOL;
  4. for($i=23;$i>=0;$i--)
  5. {
  6. if($godz == ($godz+$i)%24){$class=' class=\'active\'';}
  7. $czas .= '<li'.$class.'><a href=\''.$link.'?godz='.str_pad(($godz+$i)%24,2,'0',STR_PAD_LEFT).'\'>'.str_pad(($godz+$i)%24,2,'0',STR_PAD_LEFT).'</a></li>'.PHP_EOL;
  8. }
  9. $czas .= '</ul>';
  10. return $czas;
  11. }
  12. echo lista_24h();
golabow
Spróbuj określić co chcesz uzyskać bo aktualnie jeżeli listujesz od aktualnej godziny to zawsze pierwszy element listy bedzie aktywny, więc nie ma sensu sprawdzania warunku.
Warto też ustawić poprawną strefe czasową date_default_timezone_set
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.