> 백엔드 개발 > PHP 튜토리얼 > php, mysql을 이용하여 오늘의 쿼리, 이번주 쿼리, 이번달 쿼리에 대한 데이터 예시에 대한 자세한 설명

php, mysql을 이용하여 오늘의 쿼리, 이번주 쿼리, 이번달 쿼리에 대한 데이터 예시에 대한 자세한 설명

墨辰丷
풀어 주다: 2023-03-28 07:12:02
원래의
2430명이 탐색했습니다.

이 글에서는 오늘의 데이터 조회, 이번 주 조회, 이번 달 조회에 대한 자세한 예시를 주로 소개하고 있으니 관심 있는 친구들이 참고하시면 좋을 것 같습니다.

php, mysql 오늘 날짜 쿼리, 이번 주 쿼리, 이번 달 데이터 인스턴스 쿼리(필드는 타임스탬프)

//其中 video 是表名;
//createtime 是字段;
//
//数据库time字段为时间戳
//
//查询当天:

$start = date('Y-m-d 00:00:00');
$end = date('Y-m-d H:i:s');
SELECT * FROM `table_name` WHERE `time` >= unix_timestamp( &#39;$start&#39; ) AND `time` <= unix_timestamp( &#39;$end&#39; )

//查询本周:

SELECT yearweek( &#39;2011-04-17 15:38:22&#39;,1 ) //结果是201115
SELECT yearweek( &#39;2011-04-17 15:38:22&#39; ) //结果是201116
//yearweek的第2个参数设置为1的原因是,中国人习惯把周1作为本周的第一天
//另外补充下:
//2011-04-17 是周日。
SELECT dayofweek( &#39;2011-04-17 15:38:22&#39; )// 查询出的是1,把礼拜天作为一周的第一天。
SELECT dayofweek( &#39;2011-04-18 15:38:22&#39; ) //查询出的是2
SELECT weekday( &#39;2011-04-17 15:38:22&#39; )// 查询出的是6,
SELECT weekday( &#39;2011-04-18 15:38:22&#39; )// 查询出的是0,
//所以建议使用weekday,查询出来的结果+1就可以了,就比较符合国人的习惯了。

SELECT * FROM `table_name` WHERE YEARWEEK( FROM_UNIXTIME( `time`, &#39;%Y-%m-%d %H:%i:%s&#39; ) ,1) = YEARWEEK( now( ),1 )

//查询本月:

$start = date(&#39;Y-m-01 00:00:00&#39;);
$end = date(&#39;Y-m-d H:i:s&#39;);
SELECT * FROM `table_name` WHERE `time` >= unix_timestamp(&#39;”.$start.”&#39;) AND `time` <= unix_timestamp(&#39;$end&#39;)

//查询本年:

$start = date(&#39;Y-01-01 00:00:00&#39;);
$end = date(&#39;Y-m-d H:i:s&#39;);
SELECT * FROM `table_name` WHERE `time` >= unix_timestamp( &#39;$start&#39; ) AND `time` <= unix_timestamp( &#39;$end&#39; )
로그인 후 복사

php 오늘, 어제, 지난 주, 그리고 이번 달 시작 타임스탬프 및 종료 시간

<?php
//<!--php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime()。-->


//1、php获取今日开始时间戳和结束时间戳 

$beginToday = mktime(0,0,0,date(&#39;m&#39;),date(&#39;d&#39;),date(&#39;Y&#39;));
$endToday = mktime(0,0,0,date(&#39;m&#39;),date(&#39;d&#39;)+1,date(&#39;Y&#39;))-1;

echo $beginToday.&#39;---&#39;.$endToday;
echo &#39;<br/>&#39;;
//2、php获取昨日起始时间戳和结束时间戳

$beginYesterday = mktime(0,0,0,date(&#39;m&#39;),date(&#39;d&#39;)-1,date(&#39;Y&#39;));
$endYesterday = mktime(0,0,0,date(&#39;m&#39;),date(&#39;d&#39;),date(&#39;Y&#39;))-1;

echo $beginYesterday.&#39;---&#39;.$endYesterday;
echo &#39;<br/>&#39;;
//3、php获取上周起始时间戳和结束时间戳

$beginLastweek=mktime(0,0,0,date(&#39;m&#39;),date(&#39;d&#39;)-date(&#39;w&#39;)+1-7,date(&#39;Y&#39;));
$endLastweek=mktime(23,59,59,date(&#39;m&#39;),date(&#39;d&#39;)-date(&#39;w&#39;)+7-7,date(&#39;Y&#39;));

echo $beginLastweek.&#39;---&#39;.$endLastweek;
echo &#39;<br/>&#39;;

//4、php获取本月起始时间戳和结束时间戳

$beginThismonth=mktime(0,0,0,date(&#39;m&#39;),1,date(&#39;Y&#39;));
$endThismonth=mktime(23,59,59,date(&#39;m&#39;),date(&#39;t&#39;),date(&#39;Y&#39;));

echo $beginThismonth.&#39;---&#39;.$endThismonth;
echo &#39;<br/>&#39;;


//PHP mktime() 函数用于返回一个日期的 Unix 时间戳。
//语法:mktime(hour,minute,second,month,day,year,is_dst)
//
//参数    描述
//hour    可选。规定小时。
//minute    可选。规定分钟。
//second    可选。规定秒。
//month    可选。规定用数字表示的月。
//day    可选。规定天。
//year    可选。规定年。在某些系统上,合法值介于 1901 - 2038 之间。不过在 PHP 5 中已经不存在这个限制了。
//is_dst可选。如果时间在日光节约时间(DST)期间,则设置为1,否则设置为0,若未知,则设置为-1。
//自 5.1.0 起,is_dst 参数被废弃。因此应该使用新的时区处理特性。参数总是表示 GMT 日期,因此 is_dst 对结果没有影响。
//
//参数可以从右到左依次空着,空着的参数会被设为相应的当前 GMT 值。

echo(date("M-d-Y",mktime(0,0,0,12,36,2001)));

//将输出结果如:
//
//Jan-05-2002
로그인 후 복사

이상이 이 글의 전체 내용이므로, 모든 분들의 공부에 도움이 되기를 바랍니다.


관련 권장 사항:

php 시간 가져오는 방법

JS 구현 시간 가져오기 및 카운트다운 코드 공유 설정

jquery시간 가져오기 요약

위 내용은 php, mysql을 이용하여 오늘의 쿼리, 이번주 쿼리, 이번달 쿼리에 대한 데이터 예시에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿