Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] użycie time()
Forum PHP.pl > Forum > Przedszkole
Nightwalker
Witam,
Mam proste pytanie jednak głowie się nad nim od wczoraj, mianowicie napisałem skrypt do masowej wysyłki emaili, dlatego też po wysłaniu 10 maili jest zatrzymywany i przez header("Location: mailer.php?limit=XX"); zwiększa się próg limitu wyciągania danych z bazy, chcę policzyć ile czasu wysyłał się mass mail więc po rozpoczęciu skryptu zapisuje w sesji time(), jak teraz użyć starego czasu który mam żeby wyliczyć dokładnie ile to trwało (odejmowanie znacznika czasu zapisanego w sesji od aktualnego time() nie wystarczy ponieważ skrypt może się wykonywać 10 sekund, 10 minut lub nawet 10 godzin, a chce to w formacie gg:mm:ss). próbowałem różne sposoby jednak zawsze był jakiś problem, dlatego bardzo proszę o pomoc.

Pozdravki
Gość_Adrianek_*
Ja bym to zrobił tak
  1. <?php
  2. $stary_czas =time();
  3.  
  4. // tutaj wysyłanie maili
  5.  
  6. $godziny = round((time() - $stary_czas) / 3600);
  7. $minuty = (round((time() - $stary_czas) / 60)) - $godziny * 60;
  8. $sekundy = round((time() - $stary_czas) % 60);
  9. #========# Godziny
  10. if($godziny < 10)
  11. {
  12. echo '0';
  13. echo $godziny;
  14. echo ':';
  15. }
  16. else
  17. {
  18. echo $godziny;
  19. echo ':';
  20. }
  21. #========# Koniec godziny
  22. #========# Minuty
  23. if($minuty < 10)
  24. {
  25. echo '0';
  26. echo $minuty;
  27. echo ':';
  28. }
  29. else
  30. {
  31. echo $minuty;
  32. echo ':';
  33. }
  34. #========# Koniec minuty
  35. #========# Sekundy
  36. if($sekundy < 10)
  37. {
  38. echo '0';
  39. echo $sekundy;
  40. }
  41. else
  42. {
  43. echo $sekundy;
  44. }
  45. #========# Koniec sekundy
  46. ?>


Jezeli dobrze zrozumiałem to bedzie tak. Masz podane w formacie 00:00:00
Gość_Adrianek_*
Mój bład ;p zamiast zmiennej

  1. <?php
  2. $stary_czas = time();
  3. ?>

zamień wszędzie na

  1. <?php
  2. $_SESSION['time'] = time();
  3. ?>

a te zmienne w liczeniu zamień na

  1. <?php
  2. $_SESSION['time']
  3. ?>
Gość
mam podobnie, tyle tylko że z użyciem date("G:i:s") i explode(":", $_SESSION['czas_rozpoczecia']), myślałem że da się to zrobić prościej... no ale nic i tak dzięki za pomoc.
PhoenixPL
Z time jest tak dużo bo jest do formatu 00:00:00, mozna to skrócić ale wtedy jak bedzie zero h to bedzi 0 itd wtedy to szpetnie wyglada winksmiley.jpg opisz problem z datą bo może da sie go jakiś inaczej rozwiazac ;]
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.