⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 calc.class.php

📁 一个用PHP编写的
💻 PHP
📖 第 1 页 / 共 4 页
字号:
//    function endOfPrevMonth($day='',$month='',$year='',$format='%Y%m%d')//    {//        if (empty($year)) {//            $year = Date_Calc::dateNow('%Y');//        }//        if (empty($month)) {//            $month = Date_Calc::dateNow('%m');//        }//        if (empty($day)) {//            $day = Date_Calc::dateNow('%d');//        }////        if ($month > 1) {//            $month--;//        } else {//            $year--;//            $month=12;//        }////        $day = Date_Calc::daysInMonth($month,$year);////        return Date_Calc::dateFormat($day,$month,$year,$format);//    } // end func endOfPrevMonth////    /**//     * Returns date of the next weekday of given date,//     * skipping from Friday to Monday.//     *//     * @param string day in format DD, default is current local day//     * @param string month in format MM, default is current local month//     * @param string year in format CCYY, default is current local year//     * @param string format for returned date//     *//     * @access public//     *//     * @return string date in given format//     */////    function nextWeekday($day='',$month='',$year='',$format='%Y%m%d')//    {//        if (empty($year)) {//            $year = Date_Calc::dateNow('%Y');//        }//        if (empty($month)) {//            $month = Date_Calc::dateNow('%m');//        }//        if (empty($day)) {//            $day = Date_Calc::dateNow('%d');//        }////        $days = Date_Calc::dateToDays($day,$month,$year);////        if (Date_Calc::dayOfWeek($day,$month,$year) == 5) {//            $days += 3;//        } elseif (Date_Calc::dayOfWeek($day,$month,$year) == 6) {//            $days += 2;//        } else {//            $days += 1;//        }////        return(Date_Calc::daysToDate($days,$format));//    } // end func nextWeekday////    /**//     * Returns date of the previous weekday,//     * skipping from Monday to Friday.//     *//     * @param string day in format DD, default is current local day//     * @param string month in format MM, default is current local month//     * @param string year in format CCYY, default is current local year//     * @param string format for returned date//     *//     * @access public//     *//     * @return string date in given format//     */////    function prevWeekday($day='',$month='',$year='',$format='%Y%m%d')//    {//        if (empty($year)) {//            $year = Date_Calc::dateNow('%Y');//        }//        if (empty($month)) {//            $month = Date_Calc::dateNow('%m');//        }//        if (empty($day)) {//            $day = Date_Calc::dateNow('%d');//        }////        $days = Date_Calc::dateToDays($day,$month,$year);////        if (Date_Calc::dayOfWeek($day,$month,$year) == 1) {//            $days -= 3;//        } elseif (Date_Calc::dayOfWeek($day,$month,$year) == 0) {//            $days -= 2;//        } else {//            $days -= 1;//        }////        return(Date_Calc::daysToDate($days,$format));//    } // end func prevWeekday////    /**//     * Returns date of the next specific day of the week//     * from the given date.//     *//     * @param int day of week, 0=Sunday//     * @param string day in format DD, default is current local day//     * @param string month in format MM, default is current local month//     * @param string year in format CCYY, default is current local year//     * @param boolean onOrAfter if true and days are same, returns current day//     * @param string format for returned date//     *//     * @access public//     *//     * @return string date in given format//     */////    function nextDayOfWeek($dow,$day='',$month='',$year='',$format='%Y%m%d',$onOrAfter=false)//    {//        if (empty($year)) {//            $year = Date_Calc::dateNow('%Y');//        }//        if (empty($month)) {//            $month = Date_Calc::dateNow('%m');//        }//        if (empty($day)) {//            $day = Date_Calc::dateNow('%d');//        }////        $days = Date_Calc::dateToDays($day,$month,$year);//        $curr_weekday = Date_Calc::dayOfWeek($day,$month,$year);////        if ($curr_weekday == $dow) {//            if (!$onOrAfter) {//                $days += 7;//            }//        }//        elseif ($curr_weekday > $dow) {//            $days += 7 - ( $curr_weekday - $dow );//        } else {//            $days += $dow - $curr_weekday;//        }////        return(Date_Calc::daysToDate($days,$format));//    } // end func nextDayOfWeek////    /**//     * Returns date of the previous specific day of the week//     * from the given date.//     *//     * @param int day of week, 0=Sunday//     * @param string day in format DD, default is current local day//     * @param string month in format MM, default is current local month//     * @param string year in format CCYY, default is current local year//     * @param boolean onOrBefore if true and days are same, returns current day//     * @param string format for returned date//     *//     * @access public//     *//     * @return string date in given format//     */////    function prevDayOfWeek($dow,$day='',$month='',$year='',$format='%Y%m%d',$onOrBefore=false)//    {//        if (empty($year)) {//            $year = Date_Calc::dateNow('%Y');//        }//        if (empty($month)) {//            $month = Date_Calc::dateNow('%m');//        }//        if (empty($day)) {//            $day = Date_Calc::dateNow('%d');//        }////        $days = Date_Calc::dateToDays($day,$month,$year);//        $curr_weekday = Date_Calc::dayOfWeek($day,$month,$year);////        if ($curr_weekday == $dow) {//            if (!$onOrBefore) {//                $days -= 7;//            }//        }//        elseif ($curr_weekday < $dow) {//            $days -= 7 - ( $dow - $curr_weekday );//        } else {//            $days -= $curr_weekday - $dow;//        }////        return(Date_Calc::daysToDate($days,$format));//    } // end func prevDayOfWeek////    /**//     * Returns date of the next specific day of the week//     * on or after the given date.//     *//     * @param int day of week, 0=Sunday//     * @param string day in format DD, default is current local day//     * @param string month in format MM, default is current local month//     * @param string year in format CCYY, default is current local year//     * @param string format for returned date//     *//     * @access public//     *//     * @return string date in given format//     */////    function nextDayOfWeekOnOrAfter($dow,$day='',$month='',$year='',$format='%Y%m%d')//    {//        return(Date_Calc::nextDayOfWeek($dow,$day,$month,$year,$format,true));//    } // end func nextDayOfWeekOnOrAfter////    /**//     * Returns date of the previous specific day of the week//     * on or before the given date.//     *//     * @param int day of week, 0=Sunday//     * @param string day in format DD, default is current local day//     * @param string month in format MM, default is current local month//     * @param string year in format CCYY, default is current local year//     * @param string format for returned date//     *//     * @access public//     *//     * @return string date in given format//     */////    function prevDayOfWeekOnOrBefore($dow,$day='',$month='',$year='',$format='%Y%m%d')//    {//        return(Date_Calc::prevDayOfWeek($dow,$day,$month,$year,$format,true));//    } // end func prevDayOfWeekOnOrAfter//    /**     * Returns date of day after given date.     *     * @param string day in format DD, default is current local day     * @param string month in format MM, default is current local month     * @param string year in format CCYY, default is current local year     * @param string format for returned date     *     * @access public     *     * @return string date in given format     */    function nextDay($day='',$month='',$year='',$format='%Y%m%d')    {        if (empty($year)) {            $year = Date_Calc::dateNow('%Y');        }        if (empty($month)) {            $month = Date_Calc::dateNow('%m');        }        if (empty($day)) {            $day = Date_Calc::dateNow('%d');        }        $days = Date_Calc::dateToDays($day,$month,$year);        return(Date_Calc::daysToDate($days + 1,$format));    }//    /**//     * Returns date of day before given date.//     *//     * @param string day in format DD, default is current local day//     * @param string month in format MM, default is current local month//     * @param string year in format CCYY, default is current local year//     * @param string format for returned date//     *//     * @access public//     *//     * @return string date in given format//     *///    function prevDay($day='',$month='',$year='',$format='%Y%m%d')    {        if (empty($year)) {            $year = Date_Calc::dateNow('%Y');        }        if (empty($month)) {            $month = Date_Calc::dateNow('%m');        }        if (empty($day)) {            $day = Date_Calc::dateNow('%d');        }        $days = Date_Calc::dateToDays($day,$month,$year);        return(Date_Calc::daysToDate($days - 1,$format));    } // end func prevDay////    /**//     * Sets century for 2 digit year.//     * 51-99 is 19, else 20//     *//     * @param string 2 digit year//     *//     * @access public//     *//     * @return string 4 digit year//     */////    function defaultCentury($year)//    {//        if (strlen($year) == 1) {//            $year = "0$year";//        }//        if ($year > 50) {//            return( "19$year" );//        } else {//            return( "20$year" );//        }//    } // end func defaultCentury////    /**//     * Returns number of days between two given dates.//     *//    * @param string $day1   day in format DD//    * @param string $month1 month in format MM//    * @param string $year1  year in format CCYY//    * @param string $day2   day in format DD//    * @param string $month2 month in format MM//    * @param string $year2  year in format CCYY//     *//     * @access public//     *//     * @return int absolute number of days between dates,//     *      -1 if there is an error.//     */////    function dateDiff($day1,$month1,$year1,$day2,$month2,$year2)//    {//        if (!Date_Calc::isValidDate($day1,$month1,$year1)) {//            return -1;//        }//        if (!Date_Calc::isValidDate($day2,$month2,$year2)) {//            return -1;//        }////        return(abs((Date_Calc::dateToDays($day1,$month1,$year1))//                    - (Date_Calc::dateToDays($day2,$month2,$year2))));//    } // end func dateDiff////    /**//    * Compares two dates//    *//    * @param string $day1   day in format DD//    * @param string $month1 month in format MM//    * @param string $year1  year in format CCYY//    * @param string $day2   day in format DD//    * @param string $month2 month in format MM//    * @param string $year2  year in format CCYY//    *//    * @access public//    * @return int 0 on equality, 1 if date 1 is greater, -1 if smaller//    *///    function compareDates($day1,$month1,$year1,$day2,$month2,$year2)//    {//        $ndays1 = Date_Calc::dateToDays($day1, $month1, $year1);//        $ndays2 = Date_Calc::dateToDays($day2, $month2, $year2);//        if ($ndays1 == $ndays2) {//            return 0;//        }//        return ($ndays1 > $ndays2) ? 1 : -1;//    } // end func compareDates////    /**//     * Find the number of days in the given month.//     *//     * @param string month in format MM, default is current local month//     * @param string year in format CCYY, default is current local year//     *//     * @access public//     *//     * @return int number of days//     *///    function daysInMonth($month='',$year='')    {        if (empty($year)) {            $year = Date_Calc::dateNow('%Y');        }        if (empty($month)) {            $month = Date_Calc::dateNow('%m');        }        if ($year == 1582 && $month == 10) {            return 21;  // October 1582 only had 1st-4th and 15th-31st        }        if ($month == 2) {            if (Date_Calc::isLeapYear($year)) {                return 29;             } else {                return 28;            }        } elseif ($month == 4 or $month == 6 or $month == 9 or $month == 11) {            return 30;        } else {            return 31;        }    } // end func daysInMonth////    /**//     * Returns the number of rows on a calendar month. Useful for//     * determining the number of rows when displaying a typical//     * month calendar.//     *//     * @param string month in format MM, default is current local month//     * @param string year in format CCYY, default is current local year//     *//     * @access public//     *//     * @return int number of weeks//     */////    function weeksInMonth($month='',$year='')//    {//        if (empty($year)) {//            $year = Date_Calc::dateNow('%Y');//        }//        if (empty($month)) {//            $month = Date_Calc::dateNow('%m');//        }//        $FDOM = Date_Calc::firstOfMonthWeekday($month, $year);//        if (DATE_CALC_BEGIN_WEEKDAY==1 && $FDOM==0) {//            $first_week_days = 7 - $FDOM + DATE_CALC_BEGIN_WEEKDAY;//            $weeks = 1;//        } elseif (DATE_CALC_BEGIN_WEEKDAY==0 && $FDOM == 6) {//            $first_week_days = 7 - $FDOM + DATE_CALC_BEGIN_WEEKDAY;//            $weeks = 1;//        } else {//            $first_week_days = DATE_CALC_BEGIN_WEEKDAY - $FDOM;//            $weeks = 0;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -