Tecnología

Inicio

Cómo convertir una marca de tiempo a una fecha en PHP

Cómo convertir una marca de tiempo a una fecha en PHP


El lenguaje de programación PHP tiene varias funciones útiles para obtener y manipular la fecha y la hora. El "tiempo () \" PHP \ función se utiliza para obtener la fecha Unix actual, un número que representa el número de segundos desde Enero 1, 1970 hora media de Greenwich (GMT). Este número es útil para la generación de números aleatorios únicos y, sino como una fecha y hora de lectura, deja mucho que desear. Por suerte, el PHP \ "fecha () \" función fue diseñada para dar formato a esta marca de tiempo utilizando un formato personalizado.

Instrucciones

1 Crear una variable para contener la fecha y hora actual y asignarle el valor devuelto por la función time ():

$ Ahora = time ()
IR

tiempo () no toma parámetros y devuelve una marca de tiempo Unix. Si necesita otra fecha relativa a ahora, calcular el número de segundos que necesita para compensar la marca de tiempo y añadir o restar de $ ahora.

Por ejemplo, ayer fue de 24 horas por 60 minutos por 60 segundos hace:

$ = $ ayer ahora - (24

60 60)
IR

También,

$ = $ mañana ahora + (24 60 60)
IR
$ = $ nextweek ahora + (7 24 60 * 60);

2 Establecer la zona horaria predeterminada. Esto permitirá que la función date () para convertir correctamente la marca de tiempo de la fecha y hora para la ubicación predeterminada. Por ejemplo,

date_default_timezone_set ( "América / Denver)
IR

Ver el \ "Lista de zonas horarias \" en la sección Recursos.

3 Construir una cadena de formato de fecha que coincida con el formato que desea mostrar o usar. Hay varios caracteres de formato estándar, tales como 'd' para un día de dos dígitos, 'D' para un nombre abreviado día, "F" para el nombre completo del mes, y 'Y' para el año de cuatro dígitos.

Por ejemplo, la cadena \ "l, F j, Y \" dará lugar a una fecha que se parece a \ "Martes, 30 de de marzo de, 2010 \". Ver el \ "PHP.net: Fecha de \" documentación vinculada en la sección de referencias para obtener una lista completa de los caracteres de formato de cadena.

4 Llame a la función date (), pasando la cadena de formato de fecha y la marca de tiempo como parámetros:

$ Todaystr = fecha (\ "l, F j, Y \", ahora $)
IR

Ahora se puede utilizar la variable que contiene la fecha formateada ($ todaystr en este caso), haciendo eco a la página, la concatenación de cadena a otra, o pasarlo a una función que requiere una fecha formateada. Hay formatos predefinidos se pueden pasar en el parámetro de cadena de formato para acarrear las cadenas de fecha y hora estándar. Por ejemplo:

$ Todaystr = fecha (DATE_RSS, ahora $)
IR

establece $ todaystr a un formato de fecha RSS como la siguiente:

Mar, Mar 30 2010 15:33:01 -0600

Ver el \ "Lista de DateTime Constantes \" en la sección Recursos para obtener una lista completa.

Consejos y advertencias

  • Si sólo necesita una fecha formateada, no una marca de tiempo Unix, establecer la zona horaria y llamar a la función date () con sólo la cadena de formato. Por ejemplo, \ "fecha (\" F j, Y, g: ia \ ") \" da la fecha y la hora actual con formato como \ "30 de marzo de 2010 15:33 \". Los valores por defecto de la función date () a la fecha y hora actuales.
  • La función mktime () ofrece un método alternativo para la construcción de marcas de tiempo Unix.
  • Algunas bases de datos, como MySQL, se pueden convertir los campos de fecha y hora en el formato de la fecha Unix, por lo que es fácil de convertir de formato de la base de datos para su propio formato.