Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] Wyświetlanie czasu bez zer wiodących
Forum PHP.pl > Forum > Przedszkole
@rtur
Raczkuje w tematyce PHP. Mam w bazie, w polu typu time zapisy: 00:13:01, 01:05:34, 00:00:17, są to informacje o czasie trwania utworów. Wyjmuje je sobie z bazy i chciałbym żeby mi się na stronie pokazywały w postaci 13:01, 01:05:34, 00:17, ktos moze mnie naprowadzic i pomoc napisac funkcje ktora to wyswietli?
erix
explode" title="Zobacz w manualu PHP" target="_manual po dwukropku, jeśli trzy elementy - zdejmujesz pierwszy, potem implode" title="Zobacz w manualu PHP" target="_manual.
@rtur
Kod
$czas = '$dane['czas']; //00:05:17
$czas = explode(":", $czas);

rozumiem ze wyszla tablica

Kod
[0] == '00'
[1] == '05'
[2] == '17'
i co z tym dalej ?

rozumiem ze po polsku było by to cos takiego teraz:

Kod
jesli pierwszy lub drugi element powyzszej tablicy = 00 to zmienna $czas = "2 element tej tablicy:3 element tej tablicy" w przeciwnym wypadku $czas = "1 element tej tablicy:2 element tej tablicy:3 element tej tablicy"

a teraz jak powinno to wygladac w jezyku programowania PHP?

dobrze kombinuje?
kefirek
  1. <?php
  2. $cz = '00:13:01';
  3.  
  4. function czas($czas) {
  5. $czas = explode(":", $czas);  
  6. return $czas[1].':'.$czas[2];  
  7. }
  8.  
  9. echo czas($cz);
  10. ?>
@rtur
na to tez wpadlem, a wersje z godzina na poczatku mozna zalatwic if'em ?

  1. <?php
  2. $cz = '02:13:01';
  3.  
  4. function czas($czas) {
  5. $czas = explode(":", $czas);
  6. if($czas[0]==00) {  
  7. return $czas[1].':'.$czas[2];
  8. } else {return  $czas[0].':'.$czas[1].':'.$czas[2]}  
  9. }
  10.  
  11. echo czas($cz);
  12. ?>


tylko tu cos nie gra bo ten kod wywala blad w wierszu 8
erix
Cytat
i co z tym dalej ?

Przecież podałem, z jakiej funkcji skorzystać.

Cytat
a teraz jak powinno to wygladac w jezyku programowania PHP?

Jeśli pierwszy element = '00', to zdejmujesz go z początku tablicy (array_shift" title="Zobacz w manualu PHP" target="_manual), potem łączysz przez implode" title="Zobacz w manualu PHP" target="_manual; kombinujecie. tongue.gif
bazyliszek83
Cytat(@rtur @ 2.04.2009, 10:00:19 ) *
na to tez wpadlem, a wersje z godzina na poczatku mozna zalatwic if'em ?

  1. <?php
  2. $cz = '02:13:01';
  3.  
  4. function czas($czas) {
  5. $czas = explode(":", $czas);
  6. if($czas[0]==00) {  
  7. return $czas[1].':'.$czas[2];
  8. } else {return  $czas[0].':'.$czas[1].':'.$czas[2]}  
  9. }
  10.  
  11. echo czas($cz);
  12. ?>


tylko tu cos nie gra bo ten kod wywala blad w wierszu 8


Wklej błąd...
@rtur
sorki zapomniałem wkleic....
Kod
Parse error: syntax error, unexpected '}' in /home/ak/ftp/sites/pp/czas.php on line 8
bazyliszek83
Cytat(@rtur @ 2.04.2009, 10:43:44 ) *
sorki zapomniałem wkleic....
Kod
Parse error: syntax error, unexpected '}' in /home/ak/ftp/sites/pp/czas.php on line 8


Daj średnik za
  1. <?php
  2. return  $czas[0].':'.$czas[1].':'.$czas[2]
  3. ?>
smile.gif
@rtur
Dzięki wszystkim, działa. Żeby już nie tworzyć nowego topica, spytam tu jak w jaki sposób mogę policzyć całkowity czas z pola typu TIME, chodzi o czas łącznie wszystkich rekordów pobranych z bazy.
bazyliszek83
Cytat(@rtur @ 2.04.2009, 11:41:45 ) *
Dzięki wszystkim, działa. Żeby już nie tworzyć nowego topica, spytam tu jak w jaki sposób mogę policzyć całkowity czas z pola typu TIME, chodzi o czas łącznie wszystkich rekordów pobranych z bazy.


TUTAJ smile.gif
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.