誕生日対応星座のPHP関数を取得

1280 ワード

PHP指定日に対応する星座名を取得
/**
     *           
     * 
     * @param integer $month    1-12
     * @param integer $day    1-31
     * @return boolean|string
     */
    public function getConstellation($month, $day)
    {
        $day   = intval($day);
        $month = intval($month);
        if ($month < 1 || $month > 12 || $day < 1 || $day > 31) return false;
        $signs = array(
                array('20'=>'   '),
                array('19'=>'   '),
                array('21'=>'   '),
                array('20'=>'   '),
                array('21'=>'   '),
                array('22'=>'   '),
                array('23'=>'   '),
                array('23'=>'   '),
                array('23'=>'   '),
                array('24'=>'   '),
                array('22'=>'   '),
                array('22'=>'   ')
        );
        list($start, $name) = each($signs[$month-1]);
        if ($day < $start)
            list($start, $name) = each($signs[($month-2 < 0) ? 11 : $month-2]);
        return $name;
    }