68 lines
1.9 KiB
PHP
68 lines
1.9 KiB
PHP
<!DOCTYPE html>
|
|
<html lang="en">
|
|
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Document</title>
|
|
</head>
|
|
|
|
<body>
|
|
<?php
|
|
|
|
// Establecer la zona horaria a tu zona local
|
|
date_default_timezone_set('Europe/Madrid');
|
|
|
|
$fechaNacimiento = new DateTime('1977-10-23');
|
|
$fechaActual = new DateTime();
|
|
|
|
|
|
// 1- Crea un script que partiendo de tu fecha de nacimiento calcule tu edad con años, meses y días.
|
|
$diferencia = $fechaActual->diff($fechaNacimiento);
|
|
echo "Tienes $diferencia->y años, $diferencia->m meses y $diferencia->d dias. <br>";
|
|
|
|
// 2- Crea un script que calcule la fecha de vencimiento de una factura a 30 días desde hoy.
|
|
$fechaVencimiento = clone $fechaActual;
|
|
$fechaVencimiento->modify('+30 days');
|
|
$fechaVencimiento = new DateTime();
|
|
echo "La fecha de vencimiento es: {$fechaVencimiento->format('d-m-Y')} <br>";
|
|
|
|
// 3- Crea un script que calcule los días que faltan para tu cumpleaños partiendo de la fecha de nacimiento.
|
|
$proximoCumple = new DateTime($fechaActual->format('Y') . '-' . $fechaNacimiento->format('m-d'));
|
|
if ($proximoCumple < $fechaActual) {
|
|
$proximoCumple->modify('+1 year');
|
|
}
|
|
$diferencia = $fechaActual->diff($proximoCumple);
|
|
echo "Quedan $diferencia->days dias para tu cumpleaños <br>";
|
|
|
|
|
|
// Crea una función para saber si una fecha es fin de semana.
|
|
|
|
if (esfinde($fechaNacimiento)) {
|
|
echo "El dia {$fechaNacimiento->format('d-m-Y')} es fin de semana";
|
|
} else {
|
|
echo "El dia {$fechaNacimiento->format('d-m-Y')} no es fin de semana";
|
|
};
|
|
|
|
|
|
function esFinde($fecha)
|
|
{
|
|
$dia = $fecha->format('w');
|
|
switch ($dia) {
|
|
case 6:
|
|
return true;
|
|
break;
|
|
case 0:
|
|
return true;
|
|
break;
|
|
default:
|
|
return false;
|
|
}
|
|
}
|
|
|
|
?>
|
|
|
|
|
|
</body>
|
|
|
|
</html>
|