很笨,用了3个小时冥思苦想。。。
而且还不知道对不对,反正现在可以用,不过还是请高手帮忙看看,写的对不对。
谢谢!感谢csdn,感谢大家!
只有30分了,仅表心意!
function convert_date( $today, $thattime ) {
$today = date('Ymd');
list($a,$b,$c) = explode('-',substr($thattime,0,10));
$thatday = $a.$b.$c;
$hiday = $today - $thatday;
if($hiday==0){
echo "今天";
}elseif($hiday==1){
echo "昨天";
}elseif($hiday==2){
echo "前天";
}elseif($hiday>=3 and $hiday<=7){
echo "三天前";
}elseif($hiday>7 and $hiday<=14){
echo "上周";
}elseif($hiday>14 and $hiday<=21){
echo "两周前";
}else{
echo "很早";
}
return false;
}
太多的ifelse等了,用switch把
算法错了,比如$today=20061121,$thattime=2006-10-11
$today - $thattime = 20061121 - 20061011 = 110
显然,20061011并不是110天前.
楼主加油,万事开头难.
+u
支持
是不是可以这样算:
$today = $time;
$thattime = mktime(0,0,0,$b,$c,$a);
$hiday = ($today - $thattime) / 60 /60 /24;
基本上都市这样一步一步走过来的
加油`
其实用php里面自带的函数就可以实现的,如果是急着应用的话,应该先好好查查手册,不然是很耽误时间的,如果是当作算法锻炼也不错。我以前也干过类似的事。加油
刚开始不是紧,好好学习,总会进步的
$lastday = mktime (0,0,0,$b,$c,$a);
$subday=round((time()-$lastday)/3600/24);
echo " 吼吼,偶学习php ".$subday." 天了";
首先, 在转化Uniux时间戳时, 不要再自己写了.PHP提供现成的函数strtotime()以下三行可以写为: $today = date('Ymd'); $thatday = strtotime($thattime);
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 终于 学习 感谢 thattime hiday today 加油 echo thatday |
注册
个人空间
