Por: esutoraiki + 20.05.2007
Código :
<?php
/*
caducidad()
Función Calcula si ya a pasado un año para avisar que ya caduco
Autor: John Sánchez Alvarez
Este código es libre de usar y modificarse
*/
function caducidad($fecha_enviada){
if ($fecha_enviada != "0000-00-00"){
//las variable f_ son para trabajar fechas
$f_caduca = strtotime("$fecha_enviada +1 year",$fecha_enviada);
$f_caduca = date("Y-m-d",$f_caduca);
$hoy = date("Y-m-d");
print "<b>Fecha en la cual caduca:</b> ".$f_caduca . "<br>";
print "<b>Fecha de actual:</b> ".$hoy . "<br>";
$f_hoy = strtotime($hoy);
$f_hoy = floor($f_hoy/86400);
// Se divide entre 86400, ya que este es el número de segundos que posee un día
$f_caduca1 = strtotime($f_caduca);
$f_caduca1 = floor($f_caduca1/86400);
//f_compara nos sirve para determinar cuantos días faltan para que se vuelva a habilitar el envió de correo a un determinado usuario
$f_compara = ($f_caduca1-$f_hoy);
print "<b>Dias que faltan para caducar:</b> ".$f_compara . "<br>";
if ($f_compara <= 0){
//El valor de 1 nos indica que se debe actualizar la base de datos
return true;
} else {
return false;
}
} else {
return false;
}
}// Cierra la funcion fecha_caducidad
//Implementación
//Esta fecha es la fecha a la cual deseamos evaluarle su caducida
$fecha_registro = "2007-05-20";
print "<b>Fecha ingresada:</b> ".$fecha_registro."<br>";
if(caducidad($fecha_registro)){
//acá ira el código que quieres se ejecute en caso de caducar
print "<b>Estado:</b> Ya caduco";
} else {
//acá ira el código que quieres se ejecute si no ha caducado
print "<b>Estado:</b> No ha caducado";
}
?>
Código :
<?php
date_default_timezone_set("Europe/Madrid");
//--Entrada--
//$fecha => ex: 2007-08-02 16:48:26
//--Salida--
//$valores['anno'] $valores['mes'] $valores['dia']
//$valores['hora'] $valores['min'] $valores['seg']
function getValores($fecha)
{
list($fechaT, $horaT) = explode(" ",$fecha);
list($anno,$mes,$dia) = explode("-",$fechaT);
list($hora,$min,$seg) = explode(":",$horaT);
$valores=array("anno" => $anno, "mes" => $mes, "dia" => $dia, "hora" => $hora, "min" => $min, "seg" => $seg);
return $valores;
}
//------------------------------------------------------------------------------
//--Salida--
//1170889200
function getTimeUNIX($anno, $mes, $dia)
{
return mktime(0, 0, 0, $mes, $dia, $anno);
}
//------------------------------------------------------------------------------
//--Salida--
//1170949706
function getTimeUNIXall($anno, $mes, $dia, $hora, $min, $seg)
{
return mktime($hora, $min, $seg, $mes, $dia, $anno);
}
//------------------------------------------------------------------------------
//--Entrada--
//$fecha => ex: 2007-08-02 16:48:26
//--Salida--
//1170889200
function getTimeUNIX_BD($fecha)
{
$valores=getValores($fecha);
return getTimeUNIXall($valores['anno'], $valores['mes'], $valores['dia'], $valores['hora'], $valores['min'], $valores['seg']);
}
//------------------------------------------------------------------------------
//--Entrada--
//$string => ex: "now" "10 September 2000" " 1 day" " 1 week" " 1 week 2 days 4 hours 2 seconds" " 1 month" "next Thursday" "last Monday"
//$timeStamp => ex: 1170889200
//--Salida--
//1170889200
function getTimeUNIXFechaFinal($string,$timeStamp)
{
return strtotime($string, $timeStamp);
}
//------------------------------------------------------------------------------
//--Entrada--
//$timeStamp => ex: 1170889200
//--Salida--
//2007-08-16
function getFechaYMD($timeStamp)
{
return date("Y-m-d", $timeStamp);
}
//------------------------------------------------------------------------------
//--Entrada--
//$fecha => ex: 2007-08-02 16:48:26
//--Salida--
//2007-08-02
function getFechaYMD_BD($fecha)
{
return date("Y-m-d", getTimeUNIX_BD($fecha));
}
//------------------------------------------------------------------------------
//--Entrada--
//$timeStamp => ex: 1170889200
//--Salida--
//16:48:26
function getFechaHIS($timeStamp)
{
return date("H:i:s", $timeStamp);
}
//------------------------------------------------------------------------------
//--Entrada--
//$fecha => ex: 2007-08-02 16:48:26
//--Salida--
//16:48:26
function getFechaHIS_BD($fecha)
{
return date("H:i:s", getTimeUNIX_BD($fecha));
}
//------------------------------------------------------------------------------
//--Entrada--
//$timeStamp => ex: 1170889200
//--Salida--
// 2007-02-08 16:48:26
function getFechaYMD_HIS($timeStamp)
{
$fecha=getFechaYMD($timeStamp) . ' ' . getFechaHIS($timeStamp);
return $fecha;
}
//------------------------------------------------------------------------------
//--Entrada--
//$timeStamp1(fecha final) => ex: 1170889200
//$timeStamp2(fecha inicial) => ex: 1170889230
//--Salida--
// 3 horas
function getDifFechasH($timeStamp1, $timeStamp2)
{
return floor(abs(($timeStamp1-$timeStamp2)/3600));//3600 =>60 * 60
}
//------------------------------------------------------------------------------
//--Entrada--
//$timeStamp1(fecha final) => ex: 1170889200
//$timeStamp2(fecha inicial) => ex: 1170889230
//--Salida--
// 45 days
function getDifFechasD($timeStamp1, $timeStamp2)
{
return floor(abs(($timeStamp1-$timeStamp2)/86400));//86400 =>24 * 60 * 60
}
//------------------------------------------------------------------------------
//--Entrada--
//$timeStamp1(fecha final) => ex: 1170889200
//$timeStamp2(fecha inicial) => ex: 1170889230
//--Salida--
// 1 mes
function getDifFechasM($timeStamp1, $timeStamp2)
{
return floor(abs(($timeStamp1-$timeStamp2)/2592000));//2592000 =>30 * 24 * 60 * 60
}
//------------------------------------------------------------------------------
//--Entrada--
//$fecha1(fecha final) => ex: 2007-09-02 16:48:26
//$fecha2(fecha inicial) => ex: 2007-08-02 16:48:26
//--Salida--
// 3 horas
function getDifFechasH_BD($fecha1, $fecha2)
{
return getDifFechasH(getTimeUNIX_BD($fecha1), getTimeUNIX_BD($fecha2));
}
//------------------------------------------------------------------------------
//--Entrada--
//$fecha1(fecha final) => ex: 2007-09-02 16:48:26
//$fecha2(fecha inicial) => ex: 2007-08-02 16:48:26
//--Salida--
// 45 days
function getDifFechasD_BD($fecha1, $fecha2)
{
return getDifFechasD(getTimeUNIX_BD($fecha1), getTimeUNIX_BD($fecha2));
}
//------------------------------------------------------------------------------
//--Entrada--
//$fecha1(fecha final) => ex: 2007-09-02 16:48:26
//$fecha2(fecha inicial) => ex: 2007-08-02 16:48:26
//--Salida--
// 1 mes
function getDifFechasM_BD($fecha1, $fecha2)
{
return getDifFechasM(getTimeUNIX_BD($fecha1), getTimeUNIX_BD($fecha2));
}
//------------------------------------------------------------------------------
?>
Código :
<?php info(); ?>