Respuestas:
strtotime convierte una cadena de fecha en una marca de tiempo. Desea hacer lo contrario, que es la fecha . El formato de fecha mysql típico es date('Y-m-d H:i:s'); Consulte la página del manual para ver qué otras letras representan.
Si tiene una marca de tiempo que desea usar (aparentemente lo hace), es el segundo argumento de date().
echo date('m/d/Y', strtotime($current_date_variable);
Acabo de agregar H: i: s a la respuesta de Rocket para obtener el tiempo junto con la fecha.
echo date('m/d/Y H:i:s', 1299446702);
Salida: 06/03/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);
resultado: 2016-06-07 14:29:00
Otras zonas horarias:
Si está usando PHP date(), puede usar este código para obtener la fecha, hora, segundo, 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
$year = date('Y', $time)
Sé que es una vieja pregunta, pero es alta en los resultados de búsqueda.
Si alguien quiere la conversión de marca de tiempo directamente a un objeto DateTime, hay una simple línea:
$timestamp = 1299446702;
$date = DateTime::createFromFormat('U', $timestamp);
Después del comentario de @sromero, el parámetro de zona horaria (el tercer parámetro en DateTime :: createFromFormat ()) se ignora cuando se pasa la marca de tiempo de Unix, por lo que el código siguiente no es necesario.
$date = DateTime::createFromFormat('U', $timestamp, new DateTimeZone('UTC'); // not needed, 3rd parameter is ignored
Puede consultar el manual de PHP para DateTime :: createFromFormat para obtener más información y opciones.
Intentalo.
<?php
$timestamp=1333342365;
echo gmdate("Y-m-d\TH:i:s\Z", $timestamp);
?>
Puedes probar esto:
$mytimestamp = 1465298940;
echo gmdate("m-d-Y", $mytimestamp);
Salida:
06-07-2016
A menos que necesite un formato de fecha y hora personalizado, es más fácil, menos propenso a errores y más legible usar una de las constantes de formato de fecha y hora integradas :
echo date(DATE_RFC822, 1368496604);
echo date("l M j, Y",$res1['timep']);
Esto es realmente bueno para convertir una marca de tiempo de Unix en una fecha legible junto con el día. Ejemplo: jueves 7 de julio de 2016
echo 'Le '.date('d/m/Y', 1234567890).' à '.date('H:i:s', 1234567890);
$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
En los ejemplos anteriores "r" y "Ymd H: i: s" son formatos de fecha PHP, otros ejemplos:
r ----- Wed, 15 Mar 2017 12:00:00 +0100 (RFC 2822 date)
c ----- 2017-03-15T12:00:00+01:00 (ISO 8601 date)
M/d/Y ----- Mar/15/2017
d-m-Y ----- 15-03-2017
Y-m-d H:i:s ----- 2017-03-15 12:00:00