Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Zamiana na sekundy
Forum PHP.pl > Forum > Przedszkole
Manderigon
Witam.
W jaki sposób najszybciej zamienić czas w takiej postaci (01:10:00) na sekundy?
Pozdrawiam.
Sephirus
Jeśli to jakieś odliczanie czyli godzina i 10 minut to np.:

  1. $czas = '01:10:00'
  2.  
  3. list($h,$m,$s) = explode(':',$czas);
  4.  
  5. $sekundy = $h*60*60 + $m*60 + $s;
Manderigon
  1. Parse error: syntax error, unexpected 'list' (T_LIST) in ... on line 5
patryczakowy
w pierszej lini brak ci średnika ; na końcu
Manderigon
A w jaki sposób mógłbym dodać do czasu np. 9:15:32 dodać 300 sekund? Funkcją strtotime?
golabow
tak na szybko.

  1. <?php
  2. $czas = '09:15:32';
  3. $dodatkowyCzas = 300;
  4.  
  5. list($h,$m,$s) = explode(':',$czas);
  6.  
  7. $sekundy = $h*60*60 + $m*60 + $s;
  8. $sekundy += $dodatkowyCzas;
  9.  
  10. $t['h'] = floor( $sekundy / 3600 );
  11. $sekundy -= $t['h'] * 3600;
  12. $t['h'] %= 24;
  13. $t['m'] = floor( $sekundy / 60 );
  14. $sekundy -= $t['m'] * 60;
  15. $t['s'] = $sekundy;
  16. foreach( $t as $k => $v ) $t[$k] = ( $v < 10 ) ? '0'.$v : $v;
  17.  
  18. $w = implode( ':', $t );
  19. echo $w;
  20. ?>
Manderigon
A nie ma może prostszego rozwiązania? :-)
mls
Jest, o ile przyjmiemy istnienie nie tylko godziny ale i daty:
  1. echo(date('Y-m-d H:i:s', strtotime('2014-08-06 09:15:32') + 300));
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.