public static function calInfo($calendar_id)
    {
        switch ($calendar_id) {
            case CAL_FRENCH:
                return self::calInfoCalendar(self::$MONTH_NAMES_FRENCH, self::$MONTH_NAMES_FRENCH, 30, 'French', 'CAL_FRENCH');

            case CAL_GREGORIAN:
                return self::calInfoCalendar(self::$MONTH_NAMES, self::$MONTH_NAMES_SHORT, 31, 'Gregorian', 'CAL_GREGORIAN');

            case CAL_JEWISH:
                $months = self::shouldEmulateBug54254() ? self::$MONTH_NAMES_JEWISH_54254 : self::$MONTH_NAMES_JEWISH_LEAP_YEAR;

                return self::calInfoCalendar($months, $months, 30, 'Jewish', 'CAL_JEWISH');

            case CAL_JULIAN:
                return self::calInfoCalendar(self::$MONTH_NAMES, self::$MONTH_NAMES_SHORT, 31, 'Julian', 'CAL_JULIAN');

            case -1:
                return array(
                CAL_GREGORIAN => self::calInfo(CAL_GREGORIAN),
                CAL_JULIAN    => self::calInfo(CAL_JULIAN),
                CAL_JEWISH    => self::calInfo(CAL_JEWISH),
                CAL_FRENCH    => self::calInfo(CAL_FRENCH),
            );

            default:
                return trigger_error('invalid calendar ID ' . $calendar_id, E_USER_WARNING);
        }
    }
public static function calInfo($calendar_id)
    {
        switch ($calendar_id) {
            case CAL_FRENCH:
                return self::calInfoCalendar(self::$MONTH_NAMES_FRENCH, self::$MONTH_NAMES_FRENCH, 30, 'French', 'CAL_FRENCH');

            case CAL_GREGORIAN:
                return self::calInfoCalendar(self::$MONTH_NAMES, self::$MONTH_NAMES_SHORT, 31, 'Gregorian', 'CAL_GREGORIAN');

            case CAL_JEWISH:
                $months = self::shouldEmulateBug54254() ? self::$MONTH_NAMES_JEWISH_54254 : self::$MONTH_NAMES_JEWISH_LEAP_YEAR;

                return self::calInfoCalendar($months, $months, 30, 'Jewish', 'CAL_JEWISH');

            case CAL_JULIAN:
                return self::calInfoCalendar(self::$MONTH_NAMES, self::$MONTH_NAMES_SHORT, 31, 'Julian', 'CAL_JULIAN');

            case -1:
                return array(
                CAL_GREGORIAN => self::calInfo(CAL_GREGORIAN),
                CAL_JULIAN    => self::calInfo(CAL_JULIAN),
                CAL_JEWISH    => self::calInfo(CAL_JEWISH),
                CAL_FRENCH    => self::calInfo(CAL_FRENCH),
            );

            default:
                return trigger_error('invalid calendar ID ' . $calendar_id, E_USER_WARNING);
        }
    }
public static function calInfo ( $ calendar_id ) { switch ( $ calendar_id ) { case CAL_FRENCH : return self :: calInfoCalendar ( self :: $ MONTH_NAMES_FRENCH , self :: $ MONTH_NAMES_FRENCH , 30 , 'French' , 'CAL_FRENCH' ) ; case CAL_GREGORIAN : return self :: calInfoCalendar ( self :: $ MONTH_NAMES , self :: $ MONTH_NAMES_SHORT , 31 , 'Gregorian' , 'CAL_GREGORIAN' ) ; case CAL_JEWISH : $ months = self :: shouldEmulateBug54254 ( ) ? self :: $ MONTH_NAMES_JEWISH_54254 : self :: $ MONTH_NAMES_JEWISH_LEAP_YEAR ; return self :: calInfoCalendar ( $ months , $ months , 30 , 'Jewish' , 'CAL_JEWISH' ) ; case CAL_JULIAN : return self :: calInfoCalendar ( self :: $ MONTH_NAMES , self :: $ MONTH_NAMES_SHORT , 31 , 'Julian' , 'CAL_JULIAN' ) ; case - 1 : return array ( CAL_GREGORIAN => self :: calInfo ( CAL_GREGORIAN ) , CAL_JULIAN => self :: calInfo ( CAL_JULIAN ) , CAL_JEWISH => self :: calInfo ( CAL_JEWISH ) , CAL_FRENCH => self :: calInfo ( CAL_FRENCH ) , ) ; default : return trigger_error ( 'invalid calendar ID ' . $ calendar_id , E_USER_WARNING ) ; } }
Returns information about a particular calendar.

Shim implementation of cal_info()

@link https://php.net/cal_info

@param int $calendar_id

@return array|bool
Returns information about a particular calendar .