php和日期查询,超全的php日期查询函数汇总

date_default_timezone_set('PRC'); //默认时区

echo "今天:",date("Y-m-d",time()),"
";

echo "今天:",date("Y-m-d",strtotime("18 june 2008")),"
";

echo "昨天:",date("Y-m-d",strtotime("-1 day")), "
";

echo "明天:",date("Y-m-d",strtotime("+1 day")), "
";

echo "一周后:",date("Y-m-d",strtotime("+1 week")), "
";

echo "一周零两天四小时两秒后:",date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds")), "
";

echo "下个星期四:",date("Y-m-d",strtotime("next Thursday")), "
";

echo "上个周一:".date("Y-m-d",strtotime("last Monday"))."
";

echo "一个月前:".date("Y-m-d",strtotime("last month"))."
";

echo "一个月后:".date("Y-m-d",strtotime("+1 month"))."
";

echo "十年后:".date("Y-m-d",strtotime("+10 year"))."
";

$a = date("w",time()); //获取今天是本周 周几

$startweekdate =date("Y-m-d H:i:s",strtotime($today)-($a-1)*24*3600); //获取本周周一

$endweekdate =date("Y-m-d H:i:s",strtotime($today)+(7-$a+1)*24*3600); //获取本周最后一天 并且为下周的第一天

$endnextweekdate=date("Y-m-d",strtotime($endweekdate)+7*24*3600);//下下周的最后一天

?>

$d = time(); //待处理的日期

$w = date("w",$d); //这天是星期几

$d0 = date("Y-m-d",strtotime("-$w day",$d)); //周开始

$d6 = date("Y-m-d",strtotime((6-$w)." day",$d)); //周结束

?>

$d = time(); //待处理的日期

$w = date("w",$d); //这天是星期几

$d0 = mktime (0,0,0,date("m"),date("d") - $w,date("Y"));//周开始

$d0 = mktime (0,0,0,date("m"),date("d") - $w + 6,date("Y"));//周结束

?>

$date = time();

$w = date("w",$d);

$d0 = date("Y-m-d",strtotime("-$w day",$date)); //周开始

$d6 = date("Y-m-d",strtotime((6-$w)." day",$date)); //周结束

?>

$date1 = date("Y-m-d",strtotime("Sunday")); //周开始

$date2 = date("Y-m-d",strtotime("Saturday")); //周结束

$date1 = date("Y-m-d",strtotime("last Sunday")); //上周开始

$date2 = date("Y-m-d",strtotime("last Saturday")); //上周结束

//得到系统的年月

$tmp_date=date("Ym");

//切割出年份

$tmp_year=substr($tmp_date,0,4);

//切割出月份

$tmp_mon =substr($tmp_date,4,2);

$tmp_nextmnoth=mktime(0,0,0,$tmp_mon+1,1,$tmp_year);

$tmp_forwardmnoth=mktime(0,0,0,$tmp_mon-1,1,$tmp_year);

//得到当前月的下一个月

$fm_next_mnoth=date("Ym",$tmp_nextmonth);

//得到当前月的上一个月

$fm_forward_mnoth=date("Ym",$tmp_forwardmonth);

?>

$d=array("日","一","二","三","四","五","六");

$whatday="星期".$d[date("w",strtotime($today))]; //获取今天星期几

$time = abs((strtotime("2008-12-25") - strtotime(date("Y-m-d")))/86400);/获取两个日期之间的天数差

?>

对于每个类型拥有的值范围以及并且指定日期何时间值的有效格式的描述见7.3.6 日期和时间类型。

这里是一个使用日期函数的例子。下面的查询选择了所有记录,其date_col的值是在最后30天以内:

mysql> SELECT something FROM table

WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) <= 30;

DAYOFWEEK(date)

返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。这些索引值对应于ODBC标准。

mysql> select DAYOFWEEK('1998-02-03');

-> 3

WEEKDAY(date)

返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。

mysql> select WEEKDAY('1997-10-04 22:23:00');

-> 5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值