ホームページ  >  記事  >  php教程  >  php计算出当天时间的起始点与结束的备忘

php计算出当天时间的起始点与结束的备忘

WBOY
WBOYオリジナル
2016-06-06 19:49:261086ブラウズ

要做一个订单查询接口,需要取出当天的订单。而数据表里面只有一个下单时间字段,保存的类型是时间戳格式的。不是2010-10-5格式的。编写的查询都是有两个时间点进行限制取数据的。由于只有一个支点,没做过类似的。编写sql查询的时候。开始遇到一点小障碍。

 

 

要做一个订单查询接口,需要取出当天的订单。而数据表里面只有一个下单时间字段,保存的类型是时间戳格式的。不是2010-10-5格式的。编写的查询都是有两个时间点进行限制取数据的。由于只有一个支点,没做过类似的。编写sql查询的时候。开始遇到一点小障碍。

听同事说,可以都转化成2010-10-5的格式,数据库保存的时间戳转化成该格式,对比年,天两部分,相等就表示同年同一天了。

 

 

上面这种方式可以达到目的,不过,工作量大一点。出发点是:去转化数据库的时间戳为date格式。经过朋友的提醒,我想到了另外一个思路:统一转化成unix时间戳进行对比。这样,编写sql查询的时候变得更方便。简单了。用之前的方式,不仅编写sql的时候需要用到数据库函数。而且,php代码还是需要做同年以及同日判断(首先要同年才行,否则,日相等不符合要求的)

 

 

 

下面是当时写的代码:

 

 

/*
 *+ -------------------------------
 * 计算当天起始点和结束点时间戳 取出当天的数据
 *+ ------------------------------
 */

$year = date("Y");
$month = date("m");
$day = date("d");
$dayBegin = mktime(0,0,0,$month,$day,$year);//当天开始时间戳
$dayEnd = mktime(23,59,59,$month,$day,$year);//当天结束时间戳

 

 

$query = "SELECT * FROM `fanli_info` WHERE insert_time$dayBegin";

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。