Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Jak dodać do zmiennej czas w sekundach?
Forum PHP.pl > Forum > Przedszkole
-tremendous07-
Cześć. Mam pytanie, otóż chciałbym dodać do zmiennej czas w sekundach, powiedzmy 10 sekund.
Czyli:
  1. $w = date("H:i:s");

Po wyprintowaniu tej zmiennej dostaję aktualny czas, chciałbym tak zedytować ten kawałek kodu, aby wyświetlał mi się nie aktualny czas, ale czas + 10s.
Jak jest teraz 10:37:10 to by się wyświetlała 10:37:20
Da się zrobić coś takiego?
wujek2009
http://php.net/manual/en/function.strtotime.php
  1. $czas = time();
  2.  
  3. echo strtotime('10 seconds', $czas);
-tremendous07-
Z time() to wiem, bo można normalnie zrobić:
  1. $czas = time() + 10;

I wychodzi to samo.

Jednak ja mam inny problem. Bo pobieram z bazy danych czas ostatniego rekordu w formacie HH:MM:SS
np. 14:00:00
I teraz chciałbym porównać aktualny czas z czasem pobrania aktualnego rekordu. Jeśli czas będzie wynosił więcej niż 30 sekund to wypisze na ekranie "offline", jeśli mniej to "online".

Np. czas ostatnio pobranego rekordu to 11:20:00, a aktualny czas to 11:20:20. Wtedy powinno wypisać "online".

Można w ogóle coś takiego zrobić?
Posio
w MANUALU albo wygooglluj:

strtotime i DateTime::createFromFormat

ogólnie DateTime powinno rozwiązać wszystkie twoje problemy.
-tremendous07-
Oo, fajna sprawa. Blisko do celu, jednak nadarzyły się komplikacje:
zmienna $now zwraca aktualną datę - 11:50:00
zmienna $dt zwraca ostatni rekord 11:08:00
jednak gdy odejmuje te wartości:
  1. echo ($now - $dt);

zwracana jest wartość 0 - dlaczego?
tremendous007
Odejmuje tylko godziny.. Co zrobić, aby były odejmowane całe wyniki? Czyli dla:
11:50:00 - 11:49:30 powinno zwrócić 30
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.