Saltar al contenido

gregoriantojd()

Introducción

El calendario gregoriano, también conocido como calendario occidental o calendario cristiano, es un calendario solar que fue introducido en 1582 por el Papa Gregorio XIII. Se utiliza ampliamente en todo el mundo como el calendario civil estándar. El calendario se introdujo como una reforma del calendario juliano, que había estado en uso desde el 45 a. C.

Nota: La función gregoriantojd() está en desuso en PHP 8.2 y está programada para eliminarse en una versión futura de PHP. Para el manejo moderno de fechas, utiliza la clase DateTime o IntlGregorianCalendar. Consulta la sección Alternativa moderna de PHP a continuación.

Historia del calendario gregoriano

El calendario gregoriano se introdujo como una forma de corregir los errores del calendario juliano. El calendario juliano se basaba en la idea de que un año tenía exactamente 365,25 días. Sin embargo, esto no era del todo preciso y el calendario se fue desincronizando gradualmente con el año solar. Para cuando se introdujo el calendario gregoriano, el calendario juliano llevaba una desviación de 10 días.

El calendario gregoriano resolvió este problema introduciendo un nuevo sistema para calcular los años bisiestos. En el calendario gregoriano, un año es bisiesto si es divisible por 4, pero no por 100, a menos que también sea divisible por 400. Esto significa que años como 1700, 1800 y 1900 no son bisiestos, pero 1600 y 2000 sí lo son.

Conversión de fechas gregorianas a números de día juliano

Los números de día juliano son una forma de representar fechas como un único número, lo que facilita realizar cálculos y comparaciones. Un número de día juliano representa la cantidad de días transcurridos desde el 1 de enero de 4713 a. C. Para convertir una fecha gregoriana a un número de día juliano, puedes utilizar la función de PHP gregoriantojd().

La función gregoriantojd() acepta tres argumentos: el mes, el día y el año. Por ejemplo, para convertir el 14 de febrero de 2023 a un número de día juliano, utilizarías el siguiente código:

La función gregoriantojd() en PHP

php
$jd = gregoriantojd(2, 14, 2023);

La variable $jd contendrá ahora el número de día juliano para el 14 de febrero de 2023, que es 2459989.

Nota: La función devuelve false si la fecha proporcionada no es válida.

Alternativa moderna de PHP

Para proyectos modernos de PHP, la clase DateTime es el estándar para operaciones aritméticas y de formato de fechas. Si necesitas específicamente un número de día juliano, la clase IntlGregorianCalendar proporciona un reemplazo directo. Ten en cuenta que esto requiere que la extensión intl esté instalada:

php
$cal = IntlGregorianCalendar::createInstance();
$cal->set(2023, 1, 14); // Month is 0-indexed (1 = February)
$jd = $cal->getJulianDayNumber();

Conclusión

Comprender el calendario gregoriano y la conversión de fechas es esencial para muchas aplicaciones técnicas. Aunque gregoriantojd() proporciona una forma directa de calcular números de día juliano, está en desuso en PHP moderno. Utiliza la clase DateTime para operaciones generales de fechas, o IntlGregorianCalendar cuando se requieran específicamente números de día juliano.

Práctica

¿Cuál es el propósito de la función de PHP 'gregoriantojd'?

¿Te resulta útil?

Vista previa dual-run — compárala con las rutas Symfony en producción.