Disons que dans ma base de données mysql j'ai un horodatage 2013-09-30 01:16:06
et disons que cette variable est $ts
.
Comment puis-je afficher cela pour afficher plus comme September 30th, 2013
?
$timestamp = "2013-09-30 01:16:06";
echo date("F jS, Y", strtotime($timestamp)); //September 30th, 2013
Notez l'utilisation de S
pour obtenir le suffixe ordinal anglais de la journée.
Puisque vous utilisez déjà strtotime
si vous avez besoin de données lisibles par l'homme pour l'heure actuelle vous pouvez simplement utiliser le mot clé " maintenant "comme dans strtotime("now")
Sources connexes
Utilisez strtotime()
pour convertir cette chaîne en horodatage Unix, puis utilisez la fonction date()
pour l'afficher comme vous le souhaitez.
echo date("F j, Y, g:i a",strtotime($ts));
Référence:
Je ne pense pas que php soit même nécessaire là-bas. Vérifiez MySQL DATE_FORMAT()
fonction.
Exemple:
SELECT DATE_FORMAT('2013-09-30 01:16:06', '%M %D, %Y %H:%i:%s') as `readable`;
Résultat:
September 30th, 2013 01:16:06
Pour une utilisation réelle:
SELECT
DATE_FORMAT(`date_column`, '%M %D, %Y %H:%i:%s') as `readable`
FROM
`your_table`;
echo date("F d Y",strtotime("2013-09-30 01:16:06"))
requête mysql
select UNIX_TIMESTAMP(datetime_field) as datetime_field from table;
PHP
echo date("F d Y", $datetime_field )
Quelque chose comme:
<?php
$date = '2013-09-30 01:16:06';
$convertDate = date('F jS, Y h:i:s', strtotime($date));
echo $convertDate;
?>
Utilisez la fonction diffForHumans
:
Carbon\Carbon::parse($ts)->diffForHumans()