Estoy haciendo una nueva sección para el blog (ya está casi terminada), y necesitaba calcular el horóscopo Chino y el horóscopo del Zodiaco, mediante la fecha de nacimiento. Dado que no encontré en Google ningún script en PHP que lo hiciera, escribí yo uno.

Horóscopo Chino


Horóscopo del Zodiaco en PHP


En principio es bastante simple, para cada mes comprueba los dos horóscopos posibles, mirando si la fecha es antes o después de un determinado día. Seguramente hay muchas más formas de hacerlo, pero esta me pareció la más sencilla.


<?
function Zodiaco ($dia$mes) {
  switch (
$mes) {
    case 
1: if ($dia >= 21) return 'Acuario'; else return 'Capricornio';
    case 
2: if ($dia >= 20) return 'Piscis'; else return 'Acuario';
    case 
3: if ($dia >= 21) return 'Aries'; else return 'Piscis';
    case 
4: if ($dia >= 21) return 'Tauro'; else return 'Aries';
    case 
5: if ($dia >= 22) return 'G&eacute;minis'; else return 'Tauro';
    case 
6: if ($dia >= 22) return 'Cancer'; else return 'G&eacute;minis';
    case 
7: if ($dia >= 24) return 'Leo'; else return 'Cancer';
    case 
8: if ($dia >= 24) return 'Virgo'; else return 'Leo';
    case 
9: if ($dia >= 24) return 'Libra'; else return 'Virgo';
    case 
10: if ($dia >= 24) return 'Escorpio'; else return 'Libra';
    case 
11: if ($dia >= 23) return 'Sagitario'; else return 'Escorpio';
    case 
12: if ($dia >= 22) return 'Capricornio'; else return 'Sagitario';
  }
}
?>



Horóscopo Chino en PHP


El horóscopo Chino, cuyo ciclo se repite cada 12 meses, es un poco mas complicado:

  • Calculo la fracción en la que se encuentra el año.
  • Después quito la cifra entera y redondeo.
  • Entonces comparo los resultados con las fracciones, hasta que encuentre la que coincida, y devuelve el horóscopo correspondiente.

<?
function HChino ($anio) {

//0004 - Año de la rata
$fraccion = ($anio 4) / 12;

//Obteniendo los decimales
$fraccion = (round ($fraccion floor ($fraccion), 2)); 

if (
$fraccion == 0) return 'Rata';
if (
$fraccion == round (1/122)) return 'Buey';
if (
$fraccion == round (2/122)) return 'Tigre';
if (
$fraccion == round (3/122)) return 'Conejo';
if (
$fraccion == round (4/122)) return 'Dragon';
if (
$fraccion == round (5/122)) return 'Serpiente';
if (
$fraccion == round (6/122)) return 'Caballo';
if (
$fraccion == round (7/122)) return 'Cabra';
if (
$fraccion == round (8/122)) return 'Mono';
if (
$fraccion == round (9/122)) return 'Gallo';
if (
$fraccion == round (10/122)) return 'Perro';
if (
$fraccion == round (11/122)) return 'Cerdo';
}
?>

Creo que no tiene errores, todos los años que probé los calcula bien, ¿te sirvió?

Si te gustó el artículo...

Puedes seguir el blog a través de Twitter, Facebook o tu lector de feeds RSS.

Artículos Relacionados

2 Comentarios



Osiris

#1 Osiris


El código corre muy bien, gracias por el aporte, y aunque está sencillo es bastante practico y resuelve bien.

Saludos

Agosto 14, 2009



Proxo

Muchas gracias, hace unos días a atrás le preguntaba a un amigo como podía hacer para agregar el horóscopo a una web que tengo.

Julio 29, 2010



Deja tu Comentario

Asigna una imagen a tu email con Gravatar, si no sabes accede al siguiente Tutorial.



Asigna una imagen a tu email
Nombre
Email [Requerido]
Web/Blog

Información

  • Aplicamos el tag nofollow, y los enlaces con keywords en los comentarios podrían ser eliminados, intentamos mantener limpio el blog de spam.

  • Puedes usar las etiquetas <i>, <b>, <em>, <strong>, <a>, href, procura cerrarlas adecuadamente o tu comentario podria no mostrarse del modo que deseas.

  • Si necesitas que se vean en el comentario caracteres especiales como los usados en lenguajes de programacion como php, xhtml, etc., debes escribirlo dentro de las etiquetas [code] [/code], de lo contrario no se mostrará.

  • Procura no escribir enlaces que no tengan ninguna relación con el tema.

  • Si realizas una crítica procura argumentarla, pero sobretodo evita los insultos.