J'ai un horodatage stocké dans une session (1299446702).
Comment puis-je convertir cela en une date/heure lisible en PHP? J'ai essayé srttotime, etc. en vain.
strtotime transforme une date en chaîne en un horodatage. Vous voulez faire le contraire, qui est date . Le format de date mysql typique est date('Y-m-d H:i:s');
Consultez la page de manuel pour connaître la signification des autres lettres.
Si vous souhaitez utiliser un horodatage (apparemment, c'est le cas), il s'agit du deuxième argument de date()
.
Je viens d'ajouter H: i: s à la réponse de Rocket pour obtenir l'heure avec la date.
echo date('m/d/Y H:i:s', 1299446702);
Sortie: 03/06/2011 16:25:02
$timestamp = 1465298940;
$datetimeFormat = 'Y-m-d H:i:s';
$date = new \DateTime();
// If you must have use time zones
// $date = new \DateTime('now', new \DateTimeZone('Europe/Helsinki'));
$date->setTimestamp($timestamp);
echo $date->format($datetimeFormat);
résultat: 2016-06-07 14:29:00
Autres fuseaux horaires:
si vous utilisez php date()
, vous pouvez utiliser ce code pour obtenir la date, l'heure, la seconde, etc.
$time = time() // you have 1299446702 in time
$year = $time/31556926 % 12; // to get year
$week = $time / 604800 % 52; // to get weeks
$hour = $time / 3600 % 24; // to get hours
$minute = $time / 60 % 60; // to get minutes
$second = $time % 60; // to get seconds
Essayez-le.
<?php
$timestamp=1333342365;
echo gmdate("Y-m-d\TH:i:s\Z", $timestamp);
?>
Je sais que c’est une vieille question, mais elle est élevée dans les résultats de recherche.
Si quelqu'un veut une conversion d'horodatage directement en un objet DateTime, il existe une simple ligne:
$timestamp = 1299446702;
$date = DateTime::createFromFormat('U', $timestamp);
Après le commentaire @sromero, le paramètre timezone (le troisième paramètre de DateTime :: createFromFormat ()) est ignoré lorsque l'horodatage unix est passé, le code ci-dessous est donc inutile.
$date = DateTime::createFromFormat('U', $timestamp, new DateTimeZone('UTC'); // not needed, 3rd parameter is ignored
Vous pouvez consulter le manuel de PHP pour DateTime :: createFromFormat pour plus d’informations et d’options.
Si vous avez besoin d'un format de date et d'heure personnalisé, il est plus facile, moins sujet aux erreurs et plus lisible d'utiliser l'une des constantes constantes de format de date et d'heure intégrées
echo date(DATE_RFC822, 1368496604);
Vous pouvez essayer ceci:
$mytimestamp = 1465298940;
echo gmdate("m-d-Y", $mytimestamp);
Sortie:
06-07-2016
echo 'Le '.date('d/m/Y', 1234567890).' à '.date('H:i:s', 1234567890);
Essaye celui-là:
echo date('m/d/Y H:i:s', 1541843467);
$Epoch = 1483228800;
$dt = new DateTime("@$Epoch"); // convert UNIX timestamp to PHP DateTime
echo $dt->format('Y-m-d H:i:s'); // output = 2017-01-01 00:00:00
Dans les exemples ci-dessus, "r" et "Y-m-d H: i: s" sont des formats de date PHP, d'autres exemples:
r ----- mer., 15 mars 2017 12:00:00 +0100 (date RFC 2822) c ----- 2017-03-15T12: 00: 00 + 01: 00 (date ISO 8601) M/j/A ----- mars/15/2017 DmY ----- 15-03-2017 Ymd H: i: s ----- 2017-03- 15:00:00