A-A+
PHP简单日期类
一个专门处理日期的 PHP 函数,在网站应用程序中,时间是很重要的一环,基本上网站上所有的文件处理都在使用着时间,比如我们常见的文章发布时间,留言发布时间,订单订购时间等等。
在 PHP 中进行处理时间是很简单的,可以直接使用 PHP 的日期函数 date(),利用 date() 函数可以直接打印出 PHP 的时间,这是比较简单的处理方法,这也是在企业网站或个人站中经常使用的方法,但如果在稍微大点的网站中再使用这种方法,就明显不足了,不可能每个需要日期的地方都加一个 date() 函数吧。
下面推荐的是一个 PHP 简单的日期类,也算是比较完整的一个 PHP 日期类,主要方法有:1,返回两个日期的天数,暂不支持时间,2,返回增加年月日后的日期, 3,返回把一个日期拆分成数组。 就是这几个方法了,可以很方便地使用在需要 PHP 日期的地方,源码如下:
<!--?php <br ?--> /** * @author MARTIN * @copyright 2011 * date class * 处理日期函数 */ class d_date { //构造函数 public function d_date() { $this->date=date("Y-m-d"); } /* * *名称:get_two_day *功能:返回两个日期间的天数,暂不支持时间 *参数:date1,dtae2,act_type:执行类型 */ public function get_two_date($date1,$date2,$act_type=1) { $date1_arr=explode("-",$date1); $date2_arr=explode("-",$date2); $T1 = mktime(0,0,0,$date1_arr[1],$date1_arr[2],$date1_arr[0]); $T2 = mktime(0,0,0,$date2_arr[1],$date2_arr[2],$date2_arr[0]); if($abs==1) { $day_mun= abs(($T2-$T1)/(24*3600)); } else { $day_mun=($T2-$T1)/(24*3600); } return $day; } /* * *名称: get_act_ymd *功能: 返回增加年月日后的日期 *参数:$date:日期,num:数量,$ymd:年月日,$act_type:执行方法增减 */ public function get_act_ymd($date="",$num=0,$ymd=1,$act_type=1) { //1,增加天数,2.增加月,3.增加年 //开始日期 if($date=="") { $date=date("Y-m-d"); } if($act_type==1) { if($ymd==1) { $back_date=date("Y-m-d",strtotime( $date ." +$num day")); } if($ymd==2) { $back_date=date("Y-m-d",strtotime( $date ." +$num month")); } if($ymd==3) { $back_date=date("Y-m-d",strtotime( $date ." +$num year")); } } else { if($ymd==1) { $back_date=date("Y-m-d",strtotime( $date ." -$num day")); } if($ymd==2) { $back_date=date("Y-m-d",strtotime( $date ." -$num month")); } if($ymd==3) { $back_date=date("Y-m-d",strtotime( $date ." -$num year")); } } return $new_date; } /* * *名称: get_date_arr *功能: 返回把一个日期拆分成数组 *参数:$date */ public function get_date_arr($date="") { if($date=="") { $date=date("Y-m-d H:i:s"); } $back_arr=array(); $temp_arr=explode(" ", $date); $temp_date=$temp_arr[0]; $temp_time=$temp_arr[1]; $temp_date_arr=explode("-", $temp_date); $temp_time_arr=explode("-", $temp_time); $back_arr["y"]=$temp_date_arr[0]; $back_arr["m"]=$temp_date_arr[1]; $back_arr["d"]=$temp_date_arr[2]; $back_arr["h"]=$temp_time_arr[0]; $back_arr["i"]=$temp_time_arr[1]; $back_arr["s"]=$temp_time_arr[2]; $week=date("w",strtotime( $date )); switch( $week ) { case 1: $week_str["w"]="Mon"; break; case 2: $week_str["w"]="Tue"; break; case 3: $week_str["w"]="Wed"; break; case 4: $week_str["w"]="Thu"; break; case 5: $week_str["w"]="Fri"; break; case 6: $week_str["w"]="Sat"; break; default: $week_str["w"]="Sun"; } $back_arr["w"]=$week; $back_arr["w_str"]=$week_str; $month_star=$back_arr["y"]."-".$back_arr["m"]."-1"; $back_arr["month_star_date"]=$month_star;//本月开始日期 $month_day_num=date('t',$month_star);//一个月内整个月的天数 $back_arr["month_day_num"]=$month_day_num; $month_end=$back_arr["y"]."-".$back_arr["m"]."-".$month_day_num; $back_arr["month_end_date"]=$month_end;//本月最后一天日期 return $back_arr; } } ?>
不错,我只会对着别人的修改。
博主很厉害啊
博主是个技术控呀!真是羡慕
太技术了!
收藏了,不管是什么语言,日期时间处理总是少不了的。
PHP还真没看懂···
wp的不都是后台都有日期么 不过看似这个不是wordpress的吧
写个主题瞧瞧
纯技术的博客越来越少了。
非常感谢啦,我有这方面的问题可以问博主的吗??
对PHP真的 是不太懂,以后我就多来向博主请教了。
博主是php专家啊