Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Skrypt PHP odliczający datę do końca roku, Skrypt PHP odliczający datę do końca roku źle wyświetla na stronie
sp5smy
post 2.04.2023, 15:43:58
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 18.01.2017

Ostrzeżenie: (0%)
-----


Wynik na stronie

https://sp5av.pzk.pl/php/czas1.php

  1.  
  2. <?php
  3. $data_do=date('Y').'-12-31';
  4. $dzis_jest=date('Y-m-d');
  5. $pozostalo = (strtotime($data_do) - strtotime($dzis_jest)) /86400;
  6. echo '<b>';
  7. echo 'do końca roku pozostało '.$pozostalo.' dni.';
  8. echo '</b>';
  9. ?>
  10.  


Był bym wdzięczny za pomoc w rozwikłaniu problemu!!
Co zrobić, żeby pokazywało pełne dni questionmark.gif

Paweł

Ten post edytował sp5smy 2.04.2023, 15:58:16
Go to the top of the page
+Quote Post
sadistic_son
post 2.04.2023, 15:54:10
Post #2





Grupa: Zarejestrowani
Postów: 1 489
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


No ale co się źle wyświetla? W chwili obecnej pozostało 273 dni i ułamek. Wszystko dobrze pokazuje.
Chyba że chcesz się ułamka pozbyć. To wtedy round użyj.

Ten post edytował sadistic_son 2.04.2023, 15:56:29


--------------------
Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami...

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc!
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Go to the top of the page
+Quote Post
viking
post 2.04.2023, 15:56:21
Post #3





Grupa: Zarejestrowani
Postów: 6 366
Pomógł: 1115
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


<?php
$today = new DateTime();
$end_of_year = new DateTime(date("Y-12-31"));
$days_left = $today->diff($end_of_year)->format("%a");
echo "Ilość dni do końca roku: " . $days_left;


--------------------
Go to the top of the page
+Quote Post
Salvation
post 2.04.2023, 16:03:18
Post #4





Grupa: Zarejestrowani
Postów: 359
Pomógł: 70
Dołączył: 15.07.2014

Ostrzeżenie: (0%)
-----


  1. $endOfYear = new \DateTime('last day of December this year');
  2. $today = new \DateTime();
  3. $difference = $endOfYear->diff($today);
  4.  
  5. echo sprintf('do końca roku pozostało: %d dni.', $difference->days);
Go to the top of the page
+Quote Post
uziom
post 4.04.2023, 17:02:33
Post #5





Grupa: Zarejestrowani
Postów: 8
Pomógł: 1
Dołączył: 4.04.2023

Ostrzeżenie: (10%)
X----


  1. <?php
  2. $current_year = date('Y');
  3. $end_of_year = strtotime("December 31, $current_year 23:59:59");
  4. $today = time();
  5. $days_to_end_of_year = ($end_of_year - $today) / (60 * 60 * 24);
  6.  
  7. if ($days_to_end_of_year > 0) {
  8. echo "Liczba dni do końca roku: " . floor($days_to_end_of_year) . " dni.";
  9. } else {
  10. echo "Bieżący rok dobiegł już końca.";
  11. }
  12. ?>

Ten skrypt korzysta z funkcji date() i strtotime() do określenia daty końca roku i bieżącej daty. Następnie wylicza liczbę dni do końca roku dzieląc różnicę między tymi datami przez 86400 (liczbę sekund w jednym dniu). Wynik jest zaokrąglany w dół do pełnych dni funkcją floor(). Na końcu skrypt wyświetla wynik wraz z komunikatem na stronie.

Uwaga: Pamiętaj, że czas serwera, na którym uruchamiasz skrypt, może być inny niż czas Twojej strefy czasowej, co może wpłynąć na wynik.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 4.06.2024 - 00:05