Avec PHP, je souhaite convertir les horodatages UNIX en chaînes de date similaires à ceci: 2008-07-17T09:24:17Z
Comment convertir un horodatage tel que 1333699439
en 2008-07-17T09:24:17Z
?
Essayez gmdate
comme ceci:
<?php
$timestamp=1333699439;
echo gmdate("Y-m-d\TH:i:s\Z", $timestamp);
?>
utiliser la fonction de date date ( string $format [, int $timestamp = time() ] )
Utilisez date('c',time())
comme format pour convertir la date ISO 8601 (ajoutée dans PHP 5) - 2012-04-06T12:45:47+05:30
utilisez date("Y-m-d\TH:i:s\Z",1333699439)
pour obtenir 2012-04-06T13:33:59Z
Voici quelques-uns des formats pris en charge par la fonction de date
<?php
$today = date("F j, Y, g:i a"); // March 10, 2001, 5:16 pm
$today = date("m.d.y"); // 03.10.01
$today = date("j, n, Y"); // 10, 3, 2001
$today = date("Ymd"); // 20010310
$today = date('h-i-s, j-m-y, it is w Day'); // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.'); // it is the 10th day.
$today = date("D M j G:i:s T Y"); // Sat Mar 10 17:16:18 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h'); // 17:03:18 m is month
$today = date("H:i:s"); // 17:16:18
?>
En supposant que vous utilisiez PHP 5.3, la manière moderne de gérer les dates est via le natif DateTime class . Pour obtenir l'heure actuelle, vous pouvez simplement appeler
$currentTime = new DateTime();
Pour créer un objet DateTime à partir d'un horodatage spécifique (c'est-à-dire pas maintenant)
$currentTime = DateTime::createFromFormat( 'U', $timestamp );
Pour obtenir une chaîne formatée, vous pouvez alors appeler
$formattedString = $currentTime->format( 'c' );
Voir le page de manuel ici
Il est très important de définir un fuseau horaire par défaut pour obtenir le résultat correct.
<?php
// set default timezone
date_default_timezone_set('Europe/Berlin');
// timestamp
$timestamp = 1307595105;
// output
echo date('d M Y H:i:s Z',$timestamp);
echo date('c',$timestamp);
?>
Aide en ligne pour la conversion: http://freeonlinetools24.com/timestamp
<?php
$timestamp=1486830234542;
echo date('Y-m-d H:i:s', $timestamp/1000);
?>
$unixtime_to_date = date('jS F Y h:i:s A (T)', $unixtime);
Cela devrait fonctionner pour.
J'ai trouvé les informations dans cette conversation si utiles que je voulais juste ajouter comment je les ai trouvées en utilisant l'horodatage de ma base de données MySQL et un peu de PHP
<?= date("Y-m-d\TH:i:s\+01:00",strtotime($column['loggedin'])) ?>
Le résultat était: 2017-03-03T08: 22: 36 + 01: 00
Merci beaucoup Stewe vous répondiez était un eureka pour moi.