2010-12-03 24 views

Répondre

0

j'aurais pensé plus tôt ... moyen le plus simple serait d'utiliser la fonction MySQL TIME() pour sélectionner seulement le temps en premier lieu.

4
substr('2000-01-01 08:00:00', 11); 
+0

+1: Si le résultat est toujours au format DATETIME, c'est le moyen le plus sûr. L'analyse syntaxique en temps réel comporte toujours le risque de perturbation de l'horodatage (ce qui est habituellement désiré, mais pas ici) –

3

Vous pouvez utiliser

substr($timestamp, -8); 
+0

gauche ou droite est tous les deux supportés – ajreal

+0

Je tapais ma réponse en même temps que vous, si j'avais vu la vôtre, je n'aurais pas soumis: -p..Mais oui, tout fonctionne bien. – Jack

1

Vous pouvez également utiliser la fonction php strtotime pour la transformer en objet datetime, puis utiliser la méthode de formatage pour obtenir une jolie représentation comme vous le souhaitez. De cette façon, vous pouvez mettre à am/pm, faire 24 heures ou 12 heures, faire ce que vous voulez avec la date, etc.

$date = strtotime('2000-01-01 08:00:00'); 
echo $date->format('H:i:s'); 
+0

Ceci est la réponse réelle. la réponse acceptée est ce que le demandeur a fini par faire, mais n'est pas la réponse à la question qui a été posée. –