喜悦国际村 
» 游客:  注册 | 登录 | 搜索 | 统计 | 帮助

RSS 订阅当前论坛  

喜悦证交所已经关闭

上一主题 下一主题
     
标题: [问题] 问一个自动计算本周及上周的时间问题  
 
w78z007
中级会员
Rank: 3Rank: 3



UID 78887
精华 0
积分 255
帖子 123
金钱 255 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2006-8-23
状态 离线
[广告]: q m
问一个自动计算本周及上周的时间问题

我这边要做一个图表对比本周和上周的收入情况,就是从数据库分别读出本周和上周的值,一周是从礼拜一算到礼拜天,今天是7月11号,本周的时间就是7月9号到11号,上周就是2号到8号,本周和上周要灵活变化,如果到了下周也能计算出本周和这周的时间
2007-7-11 09:59 AM#1
查看资料  发短消息  顶部
 
wzhu (wzhu)
版主
Rank: 7Rank: 7Rank: 7
C[A-Z]O


UID 68040
精华 0
积分 74222
帖子 1611
金钱 74164 喜悦币
威望 0
人脉 58
阅读权限 100
注册 2006-1-14
来自 湖北荆州>陕西西安>辽宁 ...
状态 离线
[推荐阅读] 使Firefox浏览速度提升4倍的绝密办法(精品)
$year = date( 'Y' );
$month = date('m');
$day = date('d');
周一  date('Y-m-d',mktime( 0,0, 0, $month ,$day - date('N') + 1 , $year );
周日  date('Y-m-d',mktime( 0,0, 0, $month ,$day - date('N') + 7 , $year );

上周一date('Y-m-d',mktime( 0,0, 0, $month ,$day - date('N') -7 + 1 , $year );
上周日date('Y-m-d',mktime( 0,0, 0, $month ,$day - date('N')  , $year );

[ 本帖最后由 wzhu 于 2007-7-11 10:19 AM 编辑 ]




<?wzhu
wzhu.print("http://www.cncmm.com");
?>
2007-7-11 10:13 AM#2
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
chzhujian
注册会员
Rank: 2



UID 74275
精华 0
积分 98
帖子 83
金钱 98 喜悦币
威望 0
人脉 0
阅读权限 20
注册 2006-5-29
状态 离线
[推荐阅读] 如何只显示一条重复的记录啊?
你好,這個是我以前寫的,我本來是用delphi寫好的程序,也是要分析不同日期的許多數據,後來改動太大,覺得用delphi開發太費時間就用perl寫了,寫完之後覺得做成網頁直接查最好,就又寫成了php,呵呵,我都是用php寫程序,很少用它做網頁。這幾個函數是從裡面摘出來的,應該隊你有用,第三個好象就是取得兩個時間差的。我們的要求很嚴格的,這個函數沒有問題,你自己看下。

function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
function gettimediff($start,$end,$type=""){
$start=strtotime($start);
$end=strtotime($end);
$long=$end-$start;
if($type=="") return $long;
else{
$tmparr1=intval($long/3600);
$tmparr2=intval(($long-$tmparr1*3600)/60);
$tmparr3=$long-$tmparr1*3600-$tmparr2*60;
return $tmparr1."時".$tmparr2."分".$tmparr3."秒";
}
}
function get_timechg($long){
$tmparr1=intval($long/3600);
$tmparr2=intval(($long-$tmparr1*3600)/60);
$tmparr3=$long-$tmparr1*3600-$tmparr2*60;
return $tmparr1."時".$tmparr2."分".$tmparr3."秒";
}
function get_date_serial($time1, $time2){//$time must be to day
$t1=strtotime($time1);
$t2=strtotime($time2);
if($t1> $t2){$t=$t1;$t1=$t2;$t2=$t;}
$num=($t2-$t1)/ 86400;
$j=0;
for($i=0;$i<=$num;$i++){
$temp=getdate($t1+$i*86400);
$timearr[$j]=$temp[mon]."/".$temp[mday]."/".$temp[year];
$j++;
}
return $timearr;
}
2007-7-11 10:23 AM#3
查看资料  发短消息  顶部
 
wzhu (wzhu)
版主
Rank: 7Rank: 7Rank: 7
C[A-Z]O


UID 68040
精华 0
积分 74222
帖子 1611
金钱 74164 喜悦币
威望 0
人脉 58
阅读权限 100
注册 2006-1-14
来自 湖北荆州>陕西西安>辽宁 ...
状态 离线
[推荐阅读] 新写了一个模板类,提些意见~


QUOTE:
原帖由 wzhu 于 2007-7-11 10:13 发表
$year = date( 'Y' );
$month = date('m');
$day = date('d');
周一  date('Y-m-d',mktime( 0,0, 0, $month ,$day - date('N') + 1 , $year );
周日  date('Y-m-d',mktime( 0,0, 0, $month ,$day - date('N') ...
到秒

$year = date( 'Y' );
$month = date('m');
$day = date('d');
周一  date('Y-m-d H:i:s',mktime( 0,0, 0, $month ,$day - date('N') + 1 , $year );
周日  date('Y-m-d H:i:s',mktime( 23,59, 59, $month ,$day - date('N') + 7 , $year );

上周一date('Y-m-d H:i:s',mktime( 0,0, 0, $month ,$day - date('N') -7 + 1 , $year );
上周日date('Y-m-d H:i:s',mktime( 23,59, 59, $month ,$day - date('N')  , $year );




<?wzhu
wzhu.print("http://www.cncmm.com");
?>
2007-7-11 10:47 AM#4
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
linren119
注册会员
Rank: 2
初级会员



UID 67545
精华 0
积分 155
帖子 143
金钱 155 喜悦币
威望 0
人脉 0
阅读权限 20
注册 2005-12-27
状态 离线
[推荐阅读] 问一个关于frameset的问题
直接在Sql里处理好了:
本周  select * from table where week(date,1) = week(NOW(),1);
上周  select * from table where week(date,1) = week(NOW(),1)-1;
表名为table,日期字段为date




纸上得来终觉浅 绝知此事要躬行
2007-7-11 11:02 AM#5
查看资料  发短消息  顶部
 
wzhu (wzhu)
版主
Rank: 7Rank: 7Rank: 7
C[A-Z]O


UID 68040
精华 0
积分 74222
帖子 1611
金钱 74164 喜悦币
威望 0
人脉 58
阅读权限 100
注册 2006-1-14
来自 湖北荆州>陕西西安>辽宁 ...
状态 离线
[推荐阅读] 请教个关于关键字查询的问题


QUOTE:
原帖由 wzhu 于 2007-7-11 10:13 发表
$year = date( 'Y' );
$month = date('m');
$day = date('d');
周一  date('Y-m-d',mktime( 0,0, 0, $month ,$day - date('N') + 1 , $year );
周日  date('Y-m-d',mktime( 0,0, 0, $month ,$day - date('N') ...
到秒

$year = date( 'Y' );
$month = date('m');
$day = date('d');
周一  date('Y-m-d H:i:s',mktime( 0,0, 0, $month ,$day - date('N') + 1 , $year );
周日  date('Y-m-d H:i:s',mktime( 23,59, 59, $month ,$day - date('N') + 7 , $year );

上周一date('Y-m-d H:i:s',mktime( 0,0, 0, $month ,$day - date('N') -7 + 1 , $year );
上周日date('Y-m-d H:i:s',mktime( 23,59, 59, $month ,$day - date('N')  , $year );




<?wzhu
wzhu.print("http://www.cncmm.com");
?>
2007-7-11 12:16 PM#6
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
stefenjun (stefenjun)
新手上路
Rank: 1
初级会员



UID 68783
精华 0
积分 49
帖子 53
金钱 49 喜悦币
威望 0
人脉 0
阅读权限 10
注册 2006-2-22
状态 离线
[推荐阅读] 如何检查一个文件是否存在(linux)?
<?php
$w = ( date("w") > 0 ) ? date("w") : 7;     //老外周一是从星期天开始的 在CN就从星期一开始
$t = ($w - 1) * 3600 * 24;           //得到今天与本周第一天的相差秒数
echo $w1 = date("Y-m-d",time()-$t);        //得到本周一的日期
?>
2007-7-11 01:59 PM#7
查看资料  发短消息  顶部
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题 | 开通个人空间  


 




Powered by Discuz! 6.1.0  © 2001-2010 Comsenz Inc.
Processed in 0.025559 second(s), 6 queries

(冀ICP备05009913号) 管理员:sadly 邮箱/MSN: sadly@phpx.com QQ:824008(长隐) 清除 Cookies - - Archiver - WAP