Pues he comenzado a trabajar con pear, instale la libreria DATE, pero cual es mi sorpresa que al utilizar mi primer metodo de una clase, me da un resultado erroneo, ¿Es posible que esta libreria que debe estar super verificada de resultados erroneos?¿es frecuente esto es PEAR?.... fijense y diganme por favor si estoy interpretando mal el metodo, estoy cometiendo una burrada... etc
el archivo con el que estoy trabajando de la libreria DATE, se llama calc.php, la clase se llama Date_Calc y les pongo el metodo que estoy usando de prueba:
Código PHP:
function dateToDays($day, $month, $year)
{
$century = (int)substr($year, 0, 2);
$year = (int)substr($year, 2, 2);
if ($month > 2) {
$month -= 3;
} else {
$month += 9;
if ($year) {
$year--;
} else {
$year = 99;
$century --;
}
}
return (floor((146097 * $century) / 4 ) +
floor((1461 * $year) / 4 ) +
floor((153 * $month + 2) / 5 ) +
$day + 1721119);
}
// }}}
// {{{ daysToDate()
/**
* Converts number of days to a distant unspecified epoch
*
* @param int $days the number of days since the Date_Calc epoch
* @param string $format the string indicating how to format the output
*
* @return string the date in the desired format
*
* @access public
* @static
*/
Segun logro entender a este metodo le pasamos como parametros dia, mes y año y nos devuelve la cantidad de dias que han transcurrido desde esa fecha. pero cuando ejecuto este script.. prueba.php
Código PHP:
<?php
include_once("Date/Calc.php");
$dias=new Date_Calc();
echo "cantidad de años: ".$dias->dateToDays(18,03,2007)/365;
?>
Me da como resultado 6723.7753424658 años y deberia ser 3 años y algo... ¿porque esto?
No pido que interpreten el codigo, ni porque devuelve ese resultado, lo me gustaria saber su opinion sobre PEAR, y saber si el metodo que estoy utilizando supuestamente es para devolver los dias dada una fecha determinada, ¿eso es lo que dice en los comentarios de para que sirve?