#1 小双
function daysInSpan($start,$end){
$dayTicks=ticksInDay();
return ($end-$start)/$dayTicks;
}
function ticksInDay(){
$today=getdate();
$yesterday=mktime(0,0,0,$today[mon],$today[mday]-1,$today[year]);
$today=mktime(0,0,0,$today[mon],$today[mday],$today[year]);
return $today-$yesterday;
}
function day($dayone,$daytwo){
$start_time_array=explode("/",$dayone);
$endtime_time_array=explode("/",$daytwo);
$start_time_year=$start_time_array[0];
$start_time_month=$start_time_array[1];
$start_time_day=$start_time_array[2];
$end_time_year=$endtime_time_array[0];
$end_time_month=$endtime_time_array[1];
$end_time_day=$endtime_time_array[2];
return daysInSpan(mktime(0,0,0,$start_time_month,$start_time_day,0+$start_time_year),mktime(0,0,0,$end_time_month,$end_time_day,0+$end_time_year));
}
求教,上面的function怎么写成一个可以调用的类啊?
class seday{
}
调用:
import("seday.php");
$seday = new seday;
$dayCount = $seday->day("2009/02/23","2009/04/23");
dump($dayCount);
2010-07-27 11:49:57
#2 jake
class seday{function daysInSpan($start,$end){
$dayTicks=
$this->ticksInDay();
return ($end-$start)/$dayTicks;
}
function ticksInDay(){
$today=getdate();
$yesterday=mktime(0,0,0,$today[mon],$today[mday]-1,$today[year]);
$today=mktime(0,0,0,$today[mon],$today[mday],$today[year]);
return $today-$yesterday;
}
function day($dayone,$daytwo){
$start_time_array=explode("/",$dayone);
$endtime_time_array=explode("/",$daytwo);
$start_time_year=$start_time_array[0];
$start_time_month=$start_time_array[1];
$start_time_day=$start_time_array[2];
$end_time_year=$endtime_time_array[0];
$end_time_month=$endtime_time_array[1];
$end_time_day=$endtime_time_array[2];
return
$this->daysInSpan(mktime(0,0,0,$start_time_month,$start_time_day,0+$start_time_year),
mktime(0,0,0,$end_time_month,$end_time_day,0+$end_time_year)
);
}
}
2010-07-27 12:18:09
#3 小双
恩,解决了,开始我也在这里return $this->daysInSpan(mktime......加了$this->,但没看到$dayTicks=$this->ticksInDay();就老是报错,呵呵。这里也调用了其他方法,其实构造类的时候,在类的内部调用function时,要$this->函数名,是吧?
2010-07-28 09:08:05
#4 小双
老大把这个帖子删掉吧,我在“扩展代码分享”板块发了个贴“ php计算两个时间差的类 ”,是把改好了的发上去的
2010-07-28 09:18:00