Cita:
Iniciado por jaronu
Gracias fcopacheco por compartir y aportar. muy bueno.
Y para los que sabemos poco,
podrias si no es molestia, explicar que hace el script a grandes rasgos?
Gracias.
No hay Problemas
Primero, este script trabaja con fechas del formato DATETIME utilizado en MySQL
año-mes-dia hora:minuto:segundo
aaaa-MM-dd hh:mm:ss
El Constructor acepta tres tipos de datos
Por si alguien no sabe qué es un constructor, les cuento que es una función que lleva el mismo nombre de la clase, lo que hace es asignar valores apenas creas el objeto.
en este caso el constructor es la funcion "fechaCompleta"
los datos que acepta son:
- una string con el formato "aaaa-MM-dd hh:mm:ss"
- un numero entero del formato time()
- un valor nulo (aqui el valor de la fecha, va a ser el momento justo en que se ejecuta el script, tomando como referencia la fecha del servidor)
lo que hace:
asigna los valores a: anno,mes,dia,hora,minuto,segundo
luego Cuadra la fecha, esto lo explico después
Obtener Fecha
Genera un string con el formato aaaa-MM-dd hh:mm:ss
Mostrar Fecha
Muestra la fecha por pantalla por medio de print()
Cuadrar Fecha
Esta función arregla las fechas para no tener fechas con formatos extraños como
2008-25-80 52:78:70
esa formato claramente es erroneo, pero con esta funcion, los valores se toman y se genera una fecha válida.
Suma
Esta función admite dos tipos de datos
- un objeto de esta misma clase
- un string con el formato ya mencionado
lo que hace:
Simplemente suma a la fecha guardada la fecha ingresada.
un ejemplo de esta función está en mi primer mensaje
Resta
Los mismo que Suma, pero ahora en resta :P
anno2
retorna un string con el año en formato de dos caracteres:
2008 -> 08
Contar Dias
Esta función admite dos tipos de datos
- un objeto de esta misma clase
- un string con el formato ya mencionado
lo que hace es contar los días que transcurrieron entre la fecha pasada por el parámetro y la fecha guardada en el objeto, y los retorna como un entero
Ejemplo:
Código PHP:
$fecha=new fechaCompleta('2008-03-08 00:00:00');
$dias=$fecha->ContarDias('2008-03-01 00:00:00');
//la variable $dias tiene guardado el siguiente valor: 7
Mayor_que y Menor_que
Estas funciones admiten dos tipos de datos
- un objeto de esta misma clase
- un string con el formato ya mencionado
Lo que hacen es comparar tu fecha, con la pasada por el parámetro, en el orden que indica la función
tu fecha Mayor que la fecha pasada por parametro
o
tu fecha Menor que la fecha pasada por parametro
Esta función retorna un valor booleano, dependiendo de si la "pregunta" es verdadera o falsa
Ejemplo:
Código PHP:
$fecha=new fechaCompleta('2008-03-08 00:00:00');
$bool=$fecha->Mayor_que('2008-03-01 00:00:00');
$bool2=$fecha->Menor_que('2008-03-01 00:00:00');
//la variable $bool guarda un valor verdadero
//la variable $bool2 guarda un valor falso
Para saber más detalles pueden revisar el código, ahora, si hay algo que no entienda, pregunten con toda confianza