Funciones fecha y hora en PHP
Por Aitor López de Aberasturi el Domingo, 10 de Agosto de 2014 0 Comentarios
- time():Devuelve la marca de tiempo en formato Unix es un número con los segundos transcurridos desde el 1 de enero de 1970.
- date ($formato [, $tiempounix = time() ]). Tiene como parámetros el formato y el tiempo unix, por defecto el tiempo actual. El formato es un string donde por ejemplo 'D, d m Y H:i:s' representaría Día de la semana(Mon hasta Sun), día del mes (del 01 al 31) mes (del 01 al 12) año (en formato yyyy) Hora, minuto y segundo.
- mktime ([hora, [minuto, [segundo, [mes, [dia, [año, [is_dst]]]]]]): Devuelve la fecha en formato unix. Todos los parámetros son opcionales. La hora por encima de 23 se refiere a la hora del día siguiente y un -1 la hora del día anterior, lo mismo para el resto de parámetros. is_dst a 1 significa horario de verano.
- getdate ([ int $timempounix = time() ]): Devuelve un array con los elementos una fecha dada en formato unix, si no se pasa parámetro se toma la fecha y hora actual.
- strftime($formato[, int $timempounix = time()]): Formatea una fecha y/o hora según la configuración regional. Ejemplo: '%D, %d %m %Y %H:%i:%s'.
- strtotime($fechahora, [ int $timempounix = time()]): Convierte una fiesta y hora textual en Inglés a un formato unix. El primer formato sería la fecha y hora en formato string por ejemplo '2012-12-03' . Al primer parámetro le puede tener el valor +1 o -1 y un elemento horario (hora, semana, mes,... que representa una hora posterior o anterior,...).
- date_default_timezone_set ($zona_horaria). Asigna la zona horaria por defecto. Si esta no está asignada la función date nos puede dar un warning.
$proximasemana=time()+(7*24*60*60); echo $proximasemana; date_default_timezone_set('Europe/Madrid'); echo "Hoy:".date('Y-m-d')."\n"; echo "Proxima semana".date('Y-m-d',$proximasemana)."\n"; echo "Proxima semana".date('Y-m-d',strtotime('+1 week'))."\n"; $hoy = getdate(); print_r($hoy); // Primer día del 2015 echo date("M-d-Y", mktime(0, 0, 0, 12, 32, 2014)); /// Ultimo dia de febrero del 2014 $dia = mktime(0, 0, 0, 3, 0, 2014); echo strftime("El último día en Feb 2014 es: %d", $dia);
Este es el resultado:
1408120012 Hoy:2014-08-08 Proxima semana2014-08-15 Proxima semana2014-08-15 Array ( [seconds] => 52 [minutes] => 26 [hours] => 18 [mday] => 8 [wday] => 5 [mon] => 8 [year] => 2014 [yday] => 219 [weekday] => Friday [month] => August [0] => 1407515212 ) Jan-01-2015 El último día en Feb 2014 es: 28