Cómo obtener la hora actual en php. PHP trabajando con fechas - date DateTime mktime y otros...

JavaScript está bloqueado en su navegador. ¡Habilite JavaScript para que el sitio funcione!

Representación de fecha y hora

En sistemas distribuidos como Internet, el tiempo juega un papel especial. Debido a una ligera discrepancia en el reloj del sistema, un jugador de Forex puede perder decenas de miles de dólares en cuestión de minutos; el sistema de inteligencia empresarial cometerá un error al realizar una previsión; Los servidores NNTP perderán información importante que necesita el usuario durante el proceso de sincronización, etc.

PHP contiene muchas funciones para trabajar con fecha y hora. Los más utilizados son:

  • tiempo()- devuelve la hora absoluta actual. Este número es igual al número de segundos que han pasado desde la medianoche del 1 de enero de 1970 (desde el comienzo de la era UNIX).
  • obtener fecha()- lee información de fecha y hora. Devuelve una matriz asociativa que contiene información para el tiempo especificado o actual (de forma predeterminada). La matriz contiene los siguientes elementos:

    Ejemplo 1

    Usando getdate() $val) echo "$clave = $val
    "; eco "
    Hoy: $d.$d.$d"; ?>

    RESULTADO DEL EJEMPLO 1:

    Segundos = 21 minutos = 4 horas = 12 mdía = 10 mdía = 4 lun = 11 año = 2005 ydía = 313 día laborable = jueves mes = noviembre 0 = 1131613461 Hoy: 10/11/2005

  • fecha()- formato de fecha y hora. Argumentos: cadena de formato y tiempo absoluto. El segundo argumento es opcional. Devuelve una cadena con la fecha dada o actual en el formato especificado. La cadena de formato puede contener los siguientes códigos:
    a
    ADesignación "AM" o "PM" incluida
    dDía del mes (01-31)
    DNombre abreviado del día de la semana (tres letras)
    FNombre del mes completo
    gramoReloj (formato de 12 horas sin ceros a la izquierda)
    GRAMOReloj (formato de 24 horas sin ceros a la izquierda)
    hReloj (formato de 12 horas)
    hReloj (formato de 24 horas)
    iMinutos (00-59)
    jDía del mes sin ceros a la izquierda (1-31)
    yoNombre completo del día de la semana.
    lIndicador de año bisiesto (0 o 1)
    metroMes (01-12)
    METRONombre del mes abreviado (tres letras)
    norteMes (1-12)
    sSegundos (00-59)
    tNúmero de días de un mes determinado (de 28 a 31)
    Ud.tiempo absoluto
    w
    yAño (dos rangos)
    YAño (cuatro rangos)
    zDía del año (0-365)
    zDesplazamiento de zona horaria en segundos (-43200 a 43200)

    Cualquier otra información incluida en la cadena de formato se insertará en la cadena devuelta. Si necesita agregar caracteres a la cadena de formato que son en sí mismos códigos de formato, deben ir precedidos por una barra invertida "\". Los caracteres que se convierten en códigos de formato cuando se les añade una barra invertida deben ir precedidos de dos barras diagonales. Por ejemplo, si necesita agregar "n" a una cadena, debe ingresar "\\n" porque "\n" es un carácter de nueva línea.

    Ejemplo 2

    Usando fecha()

    RESULTADO DEL EJEMPLO 2:

    Hoy: 10.11.05 13:03

  • mktime()- devuelve la hora absoluta, que luego puede usarse con las funciones date() o getdate(). Acepta hasta seis argumentos enteros en el siguiente orden:

    Mirar
    minutos
    artículos de segunda clase
    mes
    día del mes
    año

    Ejemplo 3

    Usando mktime()

    RESULTADO DEL EJEMPLO 3:

  • fecha de verificación()- comprobar la exactitud de la fecha. Argumentos: mes, día, año. Devuelve verdadero si la fecha es correcta, es decir.
    mes: un número entero del 1 al 12;
    día es un número entero que no excede el número total de días en un mes determinado. En este caso, los años bisiestos se procesan correctamente;
    año es un número entero de 1 a 32767.

    Por ejemplo:

    If (!checkdate($mes, 1, $año)) ( $d = getdate(); $mes = $d; $año = $d; )

    ¡Atención! La fecha puede estar dentro de un rango válido, pero otras funciones de fecha no aceptarán el valor. Por lo tanto, mktime() no debe usarse durante los años anteriores a 1902 y debe usarse con precaución durante los años anteriores a 1970.

  • tiempo de ejecución()- formación de fecha y hora local. Argumentos: cadena de formato y tiempo absoluto. El segundo argumento es opcional. Devuelve una cadena con la fecha dada o actual en el formato especificado. En este caso, los nombres de los meses y días de la semana se extraen de la configuración regional seleccionada mediante la función. La cadena de formato puede contener los siguientes códigos:
    %aNombre abreviado del día de la semana.
    %ANombre completo del día de la semana.
    %bNombre abreviado del mes
    %BNombre del mes completo
    %doFormato de fecha y hora preferido
    %DONúmero del siglo
    %dDía del mes (1-31)
    %DIgual que %m/%d/%y
    %miMes (1-12)
    %hIgual que %b
    %HReloj (formato de 24 horas)
    %IReloj (formato de 12 horas)
    %jDía del año (0-365)
    %metroMes (1-12)
    %METROminutos
    %norteCarácter de nueva línea
    %pagNotación "am" o "pm" incluida
    %rHora usando notación a.m./p.m.
    %RHora en formato de 24 horas.
    %SSegundos (00-59)
    %tCarácter de tabulación
    %TIgual que %H:%M:%S
    %uNúmero del día de la semana (1 - lunes, 7 - domingo)
    %UNúmero de semana. La cuenta atrás comienza el primer domingo del año
    %VNúmero de semana según ISO 8601:1988. La primera semana debe tener al menos cuatro días y el lunes se considera el primer día.
    %WNúmero de semana. La cuenta atrás empieza el primer lunes del año
    %wNúmero del día de la semana (0 - domingo, 6 - sábado)
    %incógnitaFormato de fecha preferido sin hora
    %INCÓGNITAFormato de hora preferido sin fecha
    %añoAño (dos rangos)
    %YAño (cuatro rangos)
    %ZZona horaria (nombre o abreviatura)
    %% Símbolo "%"

    Cualquier otra información incluida en la cadena de formato se insertará en la cadena devuelta.

Trabajar con fecha y hora en PHP es relativamente fácil. La presencia de una gran cantidad de funciones hace que el código sea menos engorroso (y en PHP 5.2 con la llegada de DateTime y en 5.3 con la adición de las clases y métodos individuales DateInterval y DatePeriod, trabajar con fechas se ha vuelto aún más simple y conveniente ). Entonces, para trabajar con la fecha... Primero, en cualquier caso, debes tener en cuenta que:

  • casi cualquier acción se puede realizar de varias formas;
  • todo el código está escrito para demostraciones y ejemplos de trabajo;
  • Es posible que el resultado alternativo propuesto no siempre sea adecuado cuando se utiliza una versión anterior de PHP (a veces más fácil que editar el código de trabajo hace muchos años);

En PHP 5.3 para trabajar correctamente con fechas para evitar errores de Estándares Estrictos. Hoy en día, por regla general, esta situación se tiene en cuenta en los scripts o en la configuración del alojamiento.

PHP convierte la marca de tiempo UNIX a la fecha en el formato dado

Una de las tareas más sencillas. La función utilizada es: fecha ($formato, $hora)
El primer parámetro es pasar el formato de fecha; para obtener más detalles, consulte la documentación (para el "habitual" 28.02.2012 15:43:59 se debe utilizar:
fecha("d.m.Y H:i:s", $hora)

PHP cómo saber la fecha de mañana/ayer

Aquí también todo es sencillo. La función time() obtiene la hora actual en formato UNIX Timestamp. Restamos (la fecha de ayer) o sumamos (mañana) la cantidad requerida de segundos (86400 = 3600*24 - en días) y obtenemos:
$ahora = tiempo(); // no requerido
$ayer = hora()-3600*24;
$mañana = hora()+3600*24;
$semanaAntes = tiempo() - 3600*24*7; //hace una semana
echo "Ayer: ",fecha("d.m.Y", $ayer),"
Mañana:",fecha("d.m.Y",$mañana);

PHP cómo obtener una fecha con un desplazamiento específico (X días antes/después)

A veces es necesario averiguar una fecha que estará a varios días de la especificada. Por ejemplo, el usuario pagó por el servicio el 11 de febrero de 2013 por 3 semanas. La información de pago está disponible. ¿Hasta qué fecha se paga?

Cuando puede "simplemente" agregar un par de días y obtener el 13 de febrero, el procedimiento no causa ninguna dificultad particular. Pero ¿qué pasa con el diferente número de días en un mes? ¿Qué pasa con los años bisiestos? Todo ya ha sido inventado antes que nosotros: para calcular la fecha a partir de un intervalo conocido usaremos mktime

$pago = array("día"=>11,"mes"=>2,"año"=>2013);
$toDate = mktime(0,0,0,$pago["mes"],$pago["día"]+3*7,$pago["año"]);
fecha de eco("d.m.Y",$toDate); // conclusión
// en PHP > 5.3 usando DateInterval
date_default_timezone_set("Europa/Moscú");
$fechahora = nueva FechaHora(fecha());
$fechahora->sub(new DateInterval("P7D")); // menos 7 días

PHP cómo calcular la diferencia entre fechas

Parecería una situación simple: hay dos fechas, cuente el número de días (meses y días) entre ellas. Sin embargo, una implementación "manual" llevará algún tiempo y existe la posibilidad de que se pierda algo (por diversión, aquellos que quieran probar pueden dejar el código en los comentarios). PHP tiene una función date_diff incorporada para calcular la diferencia entre fechas, o más precisamente Datetime::diff
$ fecha y hora1 = nueva fecha y hora ("2013-05-01");
$ fecha y hora2 = nueva fecha y hora ("2013-01-01");
$intervalo = $fechahora1->diff($fechahora2);
echo $interval->format("%R%a días después del Año Nuevo");

PHP convierte días DDD a X años Y meses Z años

A veces es necesario mostrar la hora después de un determinado evento. Por ejemplo, después del registro pasó. Por conveniencia (3200 días no significa mucho), la percepción se puede convertir en años y meses usando el formato DateInterval::format
$registerDate = new DateTime("2009-03-03");
$hoy = nueva FechaHora();
$intervalo = $hoy->diff($registerDate);
echo "Transcurrido desde el registro: ";
echo $intervalo->formato("%a días")."\n"; // número total de días
hacer eco "o";
echo $intervalo->formato("%m meses, %d días"); // meses, días

Traducción PHP de fecha a marca de tiempo: análisis de fecha en formato ruso

A veces es necesario convertir una fecha en un formato que sea fácil de leer al formato UNIX TIMESTAMP. Para analizar una fecha en el formato '2013-05-30 12:35' en sus componentes (obtenga por separado el año, el mes y el día). ), puede utilizar la función date_parse. Para convertir directamente a una marca de tiempo Unix, puede usar strtotime (así como variaciones como 'ahora', '+1 día', 'el próximo jueves' - php.net/manual/en/datetime.formats.php):
echo strtotime("2013-05-30");
print_r (date_parse ("2013-05-30 12:35"));

Sin embargo, para Rusia el formato más familiar es DD.MM.AAAA. Por supuesto, puede dividir la fecha por el carácter de punto, obtener el día, mes, año y usar la función mktime para averiguar el valor de TIMESTAMP de UNIX correspondiente. PHP5.3 introdujo la función date_parse_from_format, a la que puedes pasar una cadena de formato. Y para PHP5.2 utilicé strptime (cuya existencia, como resultó, no todos conocen, tal vez porque simplemente no está implementada para Windows: esta función no está implementada en plataformas Windows):

$ fecha = "30/05/2013 12:35";
$formato = "d.m.Y H:i";
print_r (date_parse_from_format($formato,$fecha));
// opción alternativa para PHP5.2
$formato = "%d.%m.%Y %H:%M"; // diferente al usado en la función de fecha
$d = strptime($fecha, $formato);
$nuevaFecha = mktime($d["tm_hour"], $d["tm_min"], $d["tm_sec"],
$d["tm_mon"]+1, $d["tm_mday"], $d["tm_year"]+1900); // tm_mon 0-11, tm_año 1900
echo $nuevaFecha;

Además, la función strptime tiene características especiales: el mes se desplaza en uno (enero - 0) y el año es el número de años desde 1900, es decir, para 2013 $d[’tm_year’] será igual a 113.

Enlaces e información útil:
Funciones PHP dateTime http://www.php.net/manual/en/ref.datetime.php - funciones para trabajar con fecha
Clase PHP DateTime http://www.php.net/manual/en/class.datetime.php
PHP date_diff http://www.php.net/manual/en/function.date-diff.php
PHP strftime http://ru2.php.net/manual/en/function.strftime.php
PHP date_parse_from_format http://ru2.php.net/manual/en/function.date-parse-from-format.php

Es obvio que muy a menudo los programadores tienen que trabajar con fecha y hora. El ejemplo más simple es la fecha y hora en que se envió un mensaje en un foro. Y, por supuesto, estas cosas se pueden realizar en PHP, especialmente porque hay oportunidades para trabajando con fecha y hora en PHP tantos.

Función básica relacionada con fecha y hora en PHP, - Este función tiempo(), que devuelve el número de segundos que han pasado desde medianoche 01/01/1970(el nacimiento de la era Unix):

tiempo de eco();
?>

Al ejecutar este script, descubrirá cuántos segundos han pasado desde medianoche 01/01/1970 hasta el momento de la llamada funciones de tiempo() en tu guión.

Por supuesto, además de esta función básica, que está presente en todos los lenguajes de programación donde puedes trabajar con fecha y hora(al menos entre los que conozco) hay otra función llamada obtener fecha():

$fechahora = getdate();
foreach ($fecha y hora como $k=>$v)
eco "$k - $v
";
?>

Al ejecutar este script, verá un conjunto de claves en la matriz y sus valores correspondientes (al mismo tiempo, repetimos la construcción para cada uno). Creo que ahora no te resultará difícil conocer algún dato relacionado con fecha y hora. Por ejemplo, para mostrar la hora actual, escribiría el siguiente código:

$fechahora = getdate();
echo $fechahora["horas"]..":".$fechahora["minutos"]..":".$fechahora["segundos"];
?>

También funciones getdate() hay un parámetro opcional que significa el número de segundos que han pasado desde medianoche 01/01/1970. Está hecho para que esta función pueda devolver no solo la hora y fecha actuales, sino, en general, cualquiera:

$fechahora = getdate(152353232);
echo $fechahora["año"];
?>

Como resultado, verás 1974 año.

También hay función fecha(). Recomiendo mirar su descripción en el libro de referencia, ya que esta función toma un parámetro muy complejo que especifica el formato de salida de la fecha. Hay un poco más de 30 elementos de formato. Y en el siguiente ejemplo, daré algunos de ellos y miraré el resto en el libro de referencia, porque no es necesario que los memorice, pero es muy recomendable familiarizarse con ellos. Pero es necesario conocer el principio de su uso y el siguiente ejemplo al respecto:

fecha de eco("Hoy d.m.Y H:i:s");
?>

Como resultado, verá algo como esto: " Hoy 15/11/2010 21:44:24". También funciones de fecha () También hay un segundo parámetro opcional que especifica marca de tiempo, exactamente el valor igual al número de segundos que han pasado desde medianoche 01/01/1970. Ejemplo de uso del segundo parámetro:

echo date("Érase una vez d.m.Y H:i:s", 5393235329);
?>

También hay función gmdate(), que es un análogo completo funciones de fecha (), Pero función gmdate() muestra la hora no según la zona horaria del servidor en el que se está ejecutando el script, sino según Greenwich. Obviamente, al usar esta función necesitas guardar toda la información sobre la fecha y hora que ve el usuario, y al generar debes adaptarte a la zona horaria de cada usuario (idealmente, por supuesto):

echo gmdate("Ahora en Greenwich D M j H:i:s T Y")
?>

Como resultado, verá algo como esto: " Lunes 15 de noviembre 18:52:45 GMT 2010"Por supuesto, verá una fecha diferente, pero en un formato similar. También le recomiendo encarecidamente que consulte el libro de referencia y se familiarice con los demás elementos de fecha y hora en PHP(di sólo un tercio), ya que funciones date() y gmdate()- esta es la forma más fácil y rápida obtener fecha y hora en casi cualquier formato.

Entre las diversas tareas de programación, son bastante comunes diversas manipulaciones con los valores de fecha y hora. Un sistema automatizado o una base de datos poco común puede funcionar sin almacenar información sobre el momento de un proceso en particular. Además de simplemente agregar una fecha a un registro de la base de datos o mostrar esta fecha, existen muchas tareas para mostrar estas fechas en varias formas, verificar si la hora actual corresponde a un temporizador determinado, calcular el período entre dos fechas y mucho más.

Para facilitar el trabajo con fechas, cada lenguaje de programación tiene sus propios tipos de datos especiales para almacenar valores de fecha y hora. La mayoría de las veces se trata de un valor numérico, ya sea un número entero o un valor de punto flotante.

En PHP, al trabajar con fechas la mayoría de las veces se encuentra con UNIX TIMESTAMP. Aquí la hora se almacena como un número entero. El cómputo del tiempo comienza el 1 de enero de 1970. Por lo tanto, por ejemplo, la fecha y hora 11/12/2014 19:40:00 estaría representada por el número 1418316000. Este número muestra cuántos segundos han pasado desde la fecha cero del 1 de enero de 1970, llamada Época Unix.

Un ejemplo de una página PHP que proporciona capacidades de conversión de datos se presenta en el sitio web en la sección de programas con el programa "Convertir formato de fecha y hora". Aquí puede generar la fecha deseada en el formato UNIX TIMESTAMP, así como llevar este formato a un formato estándar legible por humanos.

Obtener la hora y fecha actuales en PHP

Para obtener la hora actual del servidor, utilice la función

tiempo int (vacío)

que devolverá el valor en formato de marca de tiempo Unix.

tiempo de eco(); // salida de la hora actual en formato de marca de tiempo Unix

A primera vista, el formato no es muy conveniente para una persona, pero, como usted sabe, cuanto más simple es la presentación de los datos, más rápido la computadora procesa estos valores. Además, almacenar un número en una base de datos es mucho más rentable que cualquier formato especial. Además, PHP funciona igual a lo largo del tiempo en plataformas Unix y Windows, lo que hace posible utilizar el código en cualquiera de estas plataformas.

Convertir formato de fecha y hora en PHP

El mecanismo más simple para convertir un valor de fecha numérico en valores más comprensibles lo proporciona la función:

obtener fecha de matriz()

Devuelve una matriz asociativa que contiene información de fecha. Si no se especifica el parámetro de marca de tiempo, se devolverá la hora actual. Esta matriz contiene los siguientes valores:

La matriz resultante le permite mostrar los valores en la forma deseada:

$ fecha = 1418372345;
$fecha_mas = getdate($fecha);
echo $date_mas["mday" ] . " . " . $date_mas["mon" ] . " . " . $fecha_mas["año" ]; // 12.12.2014


También puede utilizar la función para convertir el formato de fecha y hora:

fecha de cadena(cadena $plantilla [, int $unix_timestamp])

Está diseñado para obtener la fecha de marca de tiempo actual de Unix en el formato requerido. El parámetro de cadena $template especifica el formato de salida. El parámetro $unix_timestamp se puede utilizar para especificar con qué valor de tiempo trabajar. Es opcional, por lo que si no se especifica se utilizará la fecha y hora actuales.

El formato se especifica mediante los siguientes valores:

a"antes" y "después" del mediodía: "am" o "pm"
A"antes" y "después" del mediodía en letras mayúsculas: "AM" o "PM"
ddía del mes en 2 dígitos (si es menor a 10, primero va el cero) (01 a 31)
Ddía de la semana en 3 letras. Por ejemplo, "Mon" (lunes)
jdía del mes, 1-2 dígitos sin ceros a la izquierda (del 1 al 31)
Fnombre del mes. Por ejemplo, "enero"
hhora, formato de 12 horas (01 a 12)
hhora, formato de 24 horas (00 a 23)
gramohora, formato de 12 horas sin ceros (1 a 12)
GRAMOhora, formato de 24 horas sin ceros (0 a 23)
iminutos (00 a 59)
Yo (i mayúscula)1 si el horario de verano está vigente, en caso contrario 0
l1 si el año es bisiesto, o 0 si no es bisiesto
Bhora en formato de hora de Internet (un sistema alternativo de hora del día) (de 000 a 999)
tzona horaria de la computadora. Por ejemplo, MDT
l (L minúscula)día de la semana. Por ejemplo, "lunes"
metromes, dos dígitos con ceros (01 a 12)
nortemes, uno o dos dígitos sin ceros (del 1 al 12)
METROnombre abreviado del mes. Por ejemplo, "enero"
tnúmero de días en el mes especificado (de 28 a 31)
ssegundos (0 a 59)
SSufijo de número ordinal de dos letras en inglés ("st", "nd", "rd" o "th")
Ud.número entero de segundos desde el inicio de la época UNIX
yaño, digital, 2 dígitos (14)
Yaño, digital, 4 dígitos (2014)
znúmero ordinal del día del año (de 0 a 365)
zdesplazamiento de zona horaria en segundos (de -43200 a 43200)
nortenúmero de serie del día de la semana del 1 (lunes) al 7 (domingo) de acuerdo con el estándar ISO-8601, (agregado en PHP 5.1.0)
wnúmero de serie del día de la semana del 0 (domingo) al 6 (sábado)
W.número de serie de la semana del año de acuerdo con la norma ISO-8601; las semanas comienzan el lunes (agregado en PHP 4.1.0)
ohNúmero de año según norma ISO-8601. Tiene el mismo significado que Y, excepto cuando el número de semana ISO (W) sea del año anterior o siguiente; entonces se utilizará el año de esa semana. (agregado en PHP 5.1.0)
micódigo de escala de zona horaria. Por ejemplo: UTC, GMT, Atlántico/Azores (agregado en PHP 5.1.0)
ohdiferencia con la hora de Greenwich, en horas. Por ejemplo: +0200
PAGdiferencia con la hora media de Greenwich con dos puntos entre horas y minutos. Por ejemplo: +02:00 (agregado en PHP 5.1.3)
dofecha en formato estándar ISO 8601. Por ejemplo, 2014-12-12T15:19:21+00:00 (agregado en PHP 5).
rfecha en formato » RFC 2822 Por ejemplo: jueves, 21 de diciembre de 2000 16:01:07 +0200.
Ud.número de segundos que han pasado desde el comienzo de la Época Unix (La Época Unix, 1 de enero de 1970 00:00:00 GMT)

Como puede ver en la lista, puede obtener muchos datos de fechas útiles utilizando esta función. Por ejemplo:

$ fecha = 1418372345; // fecha y hora inicial 12/12/2014 11:19:05

fecha de eco("d.m.Y", $fecha); // 12/12/2014 (fecha)
fecha de eco("H:i:s", $fecha); // 11:19:05 (hora)
fecha de eco("H:i", $fecha); // 11:19 (hora)
fecha de eco("t", $fecha); // 31 (número de días en un mes)
fecha de eco("z", $fecha); // 345 (número ordinal del día del año)
fecha de eco("l dS \of F Y h:i:s A", $fecha); // Viernes 12 de diciembre de 2014 11:19:05

Otros caracteres incluidos en el patrón se imprimirán tal cual en la línea. Si necesita ingresar un carácter que se usa en una función como código de formato, el carácter "\" se inserta delante de él. Para el valor "\n" (carácter de nueva línea), debe especificar "\\n". Por lo tanto, puede generar un mensaje completo que contenga información de fecha y hora:

fecha de eco ( "Hoy es el décimo día del yésimo año", $fecha); // Hoy es el día 345 de 2014

Convertir fecha y hora al formato de marca de tiempo

Para convertir una fecha de un formato estándar a un valor de marca de tiempo numérico, use la función:

int mktime(]]]]]])

La función mktime() devuelve el valor de tiempo de Unix correspondiente a la fecha y hora especificadas por sus argumentos. Por ejemplo:

$mi_fecha = mktime(10, 30, 0, 12, 12, 2014);

Debes tener cuidado con el orden de los argumentos de la función: horas, minutos, segundos, mes, día, año.

Además de simplemente generar un valor de fecha en una marca de tiempo, la función mktime() se puede utilizar para realizar operaciones aritméticas con fechas. Para hacer esto, simplemente puede ingresar los argumentos necesarios. Por ejemplo, si especifica el mes 14, en el valor final el mes será el segundo y el valor del año aumentará en uno:

$mi_día = 12;
$mi_mes = 12;
$mi_año = 2014;

$nueva_fecha = mktime(0, 0, 0, $mi_mes + 5, $mi_día, $mi_año);

fecha de eco("d.m.Y", $new_date); // 12/05/2015 (fecha)

Puedes hacer lo mismo con otros parámetros.

Comprobando la validez de la fecha en PHP

Cuando se trabaja con fechas, especialmente al generar una fecha usando la función mktime() propuesta anteriormente, es necesario tener en cuenta la exactitud de la fecha ingresada. Para hacer esto, PHP usa la función:

bool checkdate(int mes, int día, int año)

Devuelve verdadero si la fecha especificada por los argumentos es correcta; de lo contrario devuelve falso. La fecha se considera correcta si:

Año en el rango de 1 a 32767;

El mes varía del 1 al 12;

El día de un mes determinado, teniendo en cuenta los años bisiestos, se indica correctamente.

Ejemplo de verificación de fecha:

$mi_día = 32;
$mi_mes = 12;
$mi_año = 2014;

if (!checkdate($mi_mes, $mi_día, $mi_año))
eco "Error: la fecha es incorrecta";

Veamos parte del código de una página web real y creemos nuestro primer script PHP, es decir, mostraremos la fecha y la hora actual en nuestro sitio. Este script se utiliza con bastante frecuencia en sitios web y creo que será útil para muchos.

Creemos otro archivo php y llamemos a este archivo time.php. Lo estudiamos antes, si lo olvidaste, repítelo.

Así que creamos el archivo time.php y lo colocamos en la carpeta myphp creada previamente en . Estudiamos este tema en la lección.

Abra el código del archivo time.php y entre las etiquetas. Y

escribe el siguiente código: Listado 1:

Listado 1.

Hoy:

Hora actual

Lanzamos el servidor local, escribimos la dirección en la barra de direcciones del navegador http://localhost/myphp/time.php y presione Entrar. Y vemos esta imagen:

Tenga en cuenta que en este caso se muestra la hora actual del servidor, aquellos. Si, por ejemplo, el servidor en el que "vive" su sitio está ubicado en otro país y la hora actual difiere de la de Moscú, entonces el valor de la hora mostrada también diferirá de la de Moscú.

Veamos el código Listado 1. Etiquetas de texto normales " Hoy" Y " Hora actual" no son procesados ​​por el preprocesador PHP y se muestran como "es". En lugar de estas entradas, puede escribir cualquier texto, por ejemplo simplemente Fecha o Tiempo etc.

Y aquí está el código php encerrado en los descriptores.Antes de ser entregado al navegador, PHP lo procesa.

Como probablemente ya entendiste, la función de fecha en PHP responsable de generar la fecha y la hora. Los valores de visualización de fecha y hora se muestran entre paréntesis. Hay muchos de estos valores en PHP, y dedicaremos la siguiente lección separada a este análisis y estudio de todos los valores posibles.

El operador de eco se traduce como retirar, en este caso nos referimos a la visualización en la pantalla del monitor. Fecha Y Hora del servidor.

Se puede lograr el mismo resultado (mostrar en el navegador) colocando el script completo dentro de los descriptores PHP. Mirar Listado 2:

Listado 2.

eco "Hoy:" ;
fecha de eco (" j F Y ");
echo "Hora actual";
fecha de eco("H:i:s");
?>

Todos los elementos de texto destinados a la salida deben estar entre comillas. Las cadenas de texto se pueden encerrar entre comillas simples o dobles; hablaremos de la diferencia más adelante. Publicaciones:

eco "Hoy";

eco "Hoy";

son completamente equivalentes y aparecerán iguales.

El carácter de espacio antes de las comillas de cierre se utiliza para separar la salida de la función de fecha del texto circundante. Todos los comandos en PHP siempre están separados por un punto y coma.

Para mostrar la fecha y la hora en el sitio, inserte el código Listado 1 o Listado 2 al lugar correcto en su página web. Para darle a las inscripciones (Fecha y Hora) un estilo de diseño general para el sitio, puede utilizar.

PD Permítame recordarle que el archivo en el que coloca las inserciones PHP debe tener la extensión .php y, además, el alojamiento en el que "vive" su sitio debe admitir PHP (hoy esto es casi todo




Arriba