Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dodanie dni do daty aktualnej
Forum PHP.pl > Forum > PHP
mb83
Witam,
Potrzebuję zrobić takie coś:

data dzisiejsza (np 10.11) | 11.11 | 12.11 | 13.11 | 14.11

i tak np cały tydzień tylko żeby skrypt sprawdzał datę a nie żeby był 32.11 :-)
niewiem jak się za to zabrać, to chyba trzeba w jakiejś pętli stworzyć ale nie wiem jak napisać kod ...
dzięki za pomoc
d3ut3r
  1. $how_many_days=7;
  2.  
  3. $date=new DateTime();
  4. $days=array();
  5.  
  6. for ($i=1;$i<=$how_many_days;$i++){
  7.  
  8. $days[]=$date->format('d-m-Y');
  9. $date->add(new DateInterval('P1D'));
  10.  
  11. }
  12.  
  13. //tablica $days zawiera wszystkie daty w formacie dzien-miesiac-rok
mb83
kod nie działa, błąd serwera.
a co to jest to "P1D"?

i w którym miejscu dodać <a href bo potrzebuje aby kazda data była linkiem

dzięki
szok
Najprościej można tak:
  1. <?php
  2. $date = new DateTime();
  3. for ($i = 0; $i < 7; $i++) {
  4. $date->modify('+1 day');
  5. echo $date->format('Y-m-d H:i:s');
  6. }
  7. ?>
mb83
Cytat(szok @ 10.11.2012, 17:53:02 ) *
Najprościej można tak:
  1. <?php
  2. $date = new DateTime();
  3. for ($i = 0; $i < 7; $i++) {
  4. $date->modify('+1 day');
  5. echo $date->format('Y-m-d H:i:s');
  6. }
  7. ?>

super działa tak jak chce tylko niewiem jeszcze jak z tego linki zrobić:
<a href='data.php?c=Y-m-d'>d-m</a>
jeszcze raz dzięki za pomoc
d3ut3r
Kod który podałem działa na PHP>=5.3 P1D oznacza 1 dzień ale skoro u Ciebie ten kod nie działa to najprawdopodobniej nie masz odpowiedniej wersji PHP wersja która powinna działać nawet na starych wersjach PHP poniżej:

  1. $how_many_days=7;
  2.  
  3. $date=time();
  4.  
  5. for ($i=0;$i<$how_many_days;$i++){
  6.  
  7. $tmpDate=date('d-m-Y',strtotime('+'.$i.' days'));
  8. echo '<a href="tutajlink">'.$tmpDate.'</a>';
  9.  
  10. }
  11.  

szok
Cytat(mb83 @ 10.11.2012, 18:01:59 ) *
super działa tak jak chce tylko niewiem jeszcze jak z tego linki zrobić:
<a href='data.php?c=Y-m-d'>d-m</a>
jeszcze raz dzięki za pomoc


  1. <?php
  2. $date = new DateTime();
  3. for ($i = 0; $i < 7; $i++) {
  4. $date->modify('+1 day');
  5. echo "<a href=\"data.php?c={$date->format('Y-m-d')}\">{$date->format('d-m')}</a>";
  6. }
  7. ?>
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.