Dar formato á data e hora con PHP

febrero 19, 2021 Por admin 0

Para dar formato á data e hora tes que empregar a sintaxe:
date(format, date);

O formato vai entre comiñas, e a data ten que ser válida. Se non se pon unha data, colle a data actual.

Formatos:
Para indicar si es antes o después del mediodia hai dous formatos:
1º.- a —– «am» ou «pm»
2º.- A —– «AM» ou «PM»

Fuxo horario

e —– fuxo horario; por exemplo “UTC”,”GMT”

Data:
c —– data completa ISO 8601

Dia:

d —– día do mes, dous díxitos con cero á esquerda; é dicir, de «01» a «31»
D —– día da semana, en texto, con tres letras. Por exemplo: «Fri»

j —– día do mes sen cero inicial; de «1» a «31»


l —– día da semana, en texto, completo; por exemplo, «Friday»


N —– día da semana: “1” para luns … “7” para domingo


w —– día da semana, en número, de «0» (domingo) a «6» (sábado)


z —– día do ano; de «0» a «365»


t —– número de días do mes dado; de «28» a «31»

Semana:

W —– número da semana no ano

Mes:
F —– mes, en texto, completo. Por exemplo, «January»

m —– mes; de «01» a «12»
n —– mes sen cero inicial; de «1» a «12»

M —– mes, en texto, 3 letras; por exemplo, «Jan»

Ano:

Y —– ano, catro cifras; por exemplo, «2018»
y —– ano, dúas cifras; por exemplo, «18»

Hora:

1º.- h —– hora, de «01» a «12»
2º.- H —– hora, de «00» a «23»
3º.- g —– hora, sen ceros, de «1» a «12»
4º.- G —– hora, sen ceros; de «0» a «23»

Minutos:
i —— minutos; de «00» a «59»

Segundos:
L —– «1» ou «0», segundo si o ano é bisesto ou non

s —– segundos; de «00» a «59»


U —– segundos dende o valor de ‘epoch‘ UNIX

Outros:


u —– Milisegundos


S —– sufixo ordinal en inglés, en texto, 2 caracteres; por exemplo, «th», «nd»


Z —– diferenza horaria en segundos (de «-43200» a «43200»)

Por exemplo, para obter a data e hora actuais:
$Agora=date("Y-m-d H:i:s");

Se o que queres é pasar a data de hoxe a un formato Timestamp, tes que facelo así:
$Hoxe=strtotime(date("Y-m-d H:i:s"));

Se despois queres obter o ano, o mes e o día:
$Ano=date("Y",$Hoxe);
$Mes=date("m",$Hoxe);
$Dia=date("d",$Hoxe);


Finalmente, se queres saber cantos días ten esa data, faise así:
$DiasTotal=(($Ano-1)365)+(($Mes-1)30)+($Dia-1);

Con isto podes comparar dúas datas e saber cantos días de diferencia hai entre unha data e outra.