PHP获取系统当前时间date函数

合集下载

php获取日期(今天、昨天、上周、本周、上月、本月、季度、去年)

php获取日期(今天、昨天、上周、本周、上月、本月、季度、去年)

php获取⽇期(今天、昨天、上周、本周、上⽉、本⽉、季度、去年)获取⽇期有很多种写法,“这”只是其中⼀种,欢迎指出错误并补充://今天$today = date("Y-m-d");//昨天$yesterday = date("Y-m-d",strtotime("-1 day"));//上周$lastweek_start = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1-7,date("Y")));$lastweek_end = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("Y")));//本周$thisweek_start = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y")));$thisweek_end = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y")));//上⽉/**不太靠谱,当上个⽉没有当前天的⽇期会出错,⽐如10⽉31⽇时获取上个⽉⽉初和⽉末就会变成10⽉1⽇和10⽉31⽇*同理,+1 moth也是⼀样*/$lastmonth_start = date('Y-m-01', strtotime('-1 month'));$lastmonth_start = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m")-1,1,date("Y")));// 这个才是王道// 不太靠谱,同上$lastmonth_end = date('Y-m-t', strtotime('-1 month'));$lastmonth_end = date("Y-m-d H:i:s",mktime(23,59,59,date("m") ,0,date("Y"))); // 这个才是王道补充:--------------------突然看到这个也很有意思-----------------------------上个⽉第⼀天:echo date('Y-m-d', strtotime(date('Y-m-01') . ' -1 month')); // 本⽉第⼀天再减⼀个⽉上个⽉最后⼀天:echo date('Y-m-d', strtotime(date('Y-m-01') . ' -1 day')); // 本⽉第⼀天再减⼀天//本⽉$thismonth_start = date("Y-m-01");$thismonth_end = date("Y-m-t");//本季度未最后⼀⽉天数$getMonthDays = date("t",mktime(0, 0 , 0,date('n')+(date('n')-1)%3,1,date("Y")));//本季度/$thisquarter_start = date('Y-m-d H:i:s', mktime(0, 0, 0,date('n')-(date('n')-1)%3,1,date('Y')));$thisquarter_end = date('Y-m-d H:i:s', mktime(23,59,59,date('n')+(date('n')-1)%3,$getMonthDays,date('Y')));// 去年$lastyear_start = date("Y-01-01", strtotime('-1 year'));$lastyear_end = date("Y-12-31", strtotime('-1 year'));//2019-10-10这天 2个⽉后的⽇期date("Y-m-d",strtotime("+2 month",strtotime("2019-10-10")));// 2019-12-10这个正常没问题date("Y-m-d",strtotime("+1 month",strtotime("2019-10-31")));// 2019-12-01这个异常了,为啥呢?因为11⽉份没有31天。

sysdate函数

sysdate函数

sysdate函数sysdate() 函数可以帮助用户获取操作系统的当前日期和时间信息。

1. sysdate() 函数的用途Sysdate() 函数的应用有三个:(1) 返回当前的日期和时间:得到当前的日期和时间,让程序可以根据这个时间来执行下一步动作。

(2) 返回系统当前时间值:通过 Sysdate,可以返回当前日期和时间值,并且可以根据操作系统的配置所在时区,来获取到精准的时间值。

(3) 获取当前小时和分钟:此函数可以轻松帮助你获取当前小时及分钟,这样你就可以根据当前的小时分钟信息来处理程序;2. sysdate() 函数的格式sysdate() 函数的格式为:Sysdate:返回当前的日期时间,通常和sql语句SELECT 旘T_DATE) 中的TO_DATE("日期时间","格式")格式保持一致,例如:- 如果使用的是"YYYY-MM-DD HH24:MI:SS"格式日期格式,sysdate函数的返回值就会是"YYYY-MM-DD HH24:MI:SS"格式日期格式- 如果使用的是"YYYYMMDD"格式日期格式,sysdate函数的返回值就会是"YYYYMMDD"格式日期格式3. sysdate() 函数的使用用户可以使用sysdate()函数来获取操作系统的当前日期和时间信息,如下所示:- 使用sysdate()函数来获取当前日期和时间比如:SELECT sysdate FROM dual- 使用sysdate()函数来获取系统当前时间比如:SELECT sysdate + INTERVAL '1 minute' FROM dual- 使用sysdate()函数来获取当前小时和分钟比如:SELECT EXTRACT(HOUR FROM Sysdate) || ':' ||EXTRACT(MINUTE FROM Sysdate) FROM Dual。

php获取当前时间

php获取当前时间
从左往右你必须提供小时、分、秒、月、天和年。最后一个参数用于指定你是否处于夏令时,此参数是可选的,所以我们将忽略它。
代码如下:
?
echo mktime (0, 0,0 ,5, 27,2000 );
?
由于不知道小时、分和秒同时这些参数必须填写,我将其设置为0。设置为0意味着时间为午夜。
下面是一个例子:
?
$date_time_array = getdate (time());
echo $date_time_array[ "weekday"];
?
返回的结果为:
Sunday
除了"weekday",该数组的其他部分为:
"seconds" –秒
"minutes" –分
"hours" –小时
“mday" - 本月的第几天
"wday" -本周的第几天(数字)
"mon" -月(数字)
"year" –年
"yday" - r本年的第几天(数字)
"month" -月份全名
我们现在可以得到容易辨认的日期和时间。那么其他呢?
**转换现在的日期为Unix的时间戳值
?
// 来自Access的字符串
$date_time_string = "2000/05/27 02:40:21 PM";
// 将字符串分解成3部分-日期、时间和上午/下午
$dt_elements = explode(" " ,$date_time_string);

PHP日期时间函数大全

PHP日期时间函数大全
$lastweek_end = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("Y")));
//本周
$thisweek_start = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y")));
?>
mktime($hour, $minute, $second, $month, $day, $year)
此函数的作用与getdate()的作用相反:它由一系列的日期与时间值生成一个UNIX时间标签(GMT时间1970年1月1日到现在消逝的秒数)。不用自变量时,它生成当前时间的UNIX时间标签。
今天是:Tuesday
echo date('D');
今天是:Tue
大写L表示判断今年是否闰年,布尔值,为真返回1,否则为0;
小写l表示当天是星期几的英文全写(Tuesday);
而使用大写D表示星期几的3个字符缩写(Tue)。
echo date('w');
今天星期:2
echo date('W');
// run some code
for ($x=0; $x<1000; $x++) {
$null = $x * $x;
}
// get ending value

PHP中的data()函数

PHP中的data()函数

PHP中的data()函数date()是我们常⽤的⼀个⽇期时间函数,下⾯我来总结⼀下关于date()函数的各种形式的⽤法,有需要学习的朋友可参考。

格式化⽇期date() 函数的第⼀个参数规定了如何格式化⽇期/时间。

它使⽤字母来表⽰⽇期和时间的格式。

这⾥列出了⼀些可⽤的字母:•d - ⽉中的天 (01-31)•m - 当前⽉,以数字计 (01-12)•Y - 当前的年(四位数)您可以在我们的 PHP Date 参考⼿册中,找到格式参数中可以使⽤的所有字母。

可以在字母之间插⼊其他字符,⽐如 "/"、"." 或者 "-",这样就可以增加附加格式了:代码如下复制代码echo date("Y/m/d");echo "";echo date("Y.m.d");echo "";echo date("Y-m-d");>以上代码的输出类似这样:2006/07/112006.07.112006-07-111,年-⽉-⽇代码如下复制代码echo date('Y-m-j');2007-02-6echo date('y-n-j');07-2-6⼤写Y表⽰年四位数字,⽽⼩写y表⽰年的两位数字;⼩写m表⽰⽉份的数字(带前导),⽽⼩写n则表⽰不带前导的⽉份数字。

代码如下复制代码echo date('Y-M-j');2007-Feb-6echo date('Y-m-d');2007-02-06⼤写M表⽰⽉份的3个缩写字符,⽽⼩写m则表⽰⽉份的数字(带前导0);没有⼤写的J,只有⼩写j表⽰⽉份的⽇期,⽆前导o;若需要⽉份带前导则使⽤⼩写d。

代码如下复制代码echo date('Y-M-j');2007-Feb-6echo date('Y-F-jS');2007-February-6th⼤写M表⽰⽉份的3个缩写字符,⽽⼤写F表⽰⽉份的英⽂全写。

thinkphp关于时间的查询方法

thinkphp关于时间的查询方法

thinkphp关于时间的查询方法在ThinkPHP框架中,可以使用日期和时间函数来执行与时间相关的查询。

以下是一些常用的时间查询方法:1. 获取当前时间:```php$current_time = time(); // 返回当前时间戳```2. 格式化时间:```php$timestamp = time();$formatted_time = date('Y-m-d H:i:s', $timestamp); // 将时间戳格式化为日期时间字符串,例如 " 12:34:56"```3. 查询特定时间范围内的数据:假设你有一个名为`users`的表,其中包含`create_time`字段表示用户创建时间,可以使用以下方法查询某个时间范围内的用户:```php// 查询创建时间在指定日期范围内的用户$start_time = strtotime('');$end_time = strtotime('');$users = Db::name('users')->where('create_time', '>=', $start_time)->where('create_time', '<=', $end_time)->select();```4. 查询特定日期的数据:使用`strtotime`函数将日期字符串转换为时间戳,然后使用`where`方法进行查询。

例如,查询创建时间为指定日期的用户:```php$date = '';$timestamp = strtotime($date);$users = Db::name('users')->where('create_time', '=', $timestamp)->select();```5. 查询今天之前或之后的数据:使用`today`函数获取当前日期,然后使用`where`方法进行查询。

date函数的使用方法

date函数的使用方法

date函数的使用方法date函数是PHP的一种内置函数,可以返回当前的Unix时间戳(Unix timestamp)。

它可以方便的处理、显示日期和时间。

它也可以根据给定的日期参数,转换为特定的 Unix间戳。

Unix时间戳以秒为单位,距离格林威治时间1970年1月1日(UTC/GMT的午夜)开始计算。

date函数非常实用,可以为用户实现各种日期相关的任务,例如验证数据有效期、计算剩余时间等。

date函数还可以接收额外的参数,以便根据指定的格式返回日期字符串。

它可以被用来格式化给定的 Unix timestamp,例如把日期格式化为字符串:“星期一,十二月二十九,二零一七年”。

date函数的语法格式如下:date(format,timestamp);其中,format数是用来指定返回值格式的,timestamp数是可选的,用于指定要格式化的时间戳,如果不指定则默认使用当前的时间戳。

date函数支持大量的格式说明符,以下是一些最常用的格式说明符:d:表示月份中的第几天(01-31)m:表示月份(01-12)Y:表示年份(四位数)H:表示小时(24小时制)i:表示分钟s:表示秒除了上述的格式说明符,date函数还支持一些额外的格式说明符,如下:D:表示星期中的第几天(Mon-Sun)F:表示一个月份(January-December)l表示一个星期中的某天(Sunday-Saturday)z:表示一年中的第几天(0-365)date函数可以与其他函数结合使用,实现更多精彩的功能。

例如可以使用strtotime函数,把日期字符串转换成 Unix timestamp,然后再用date函数显示出指定格式的日期字符串。

另外,日期比较也是很常见的任务,它可以使用date函数来实现。

如果需要比较两个日期,可以使用date函数来把两个日期转换成 Unix timestamp,然后用计算手段求出它们之间的时间差,即可实现日期比较功能。

php获取当前月与上个月月初及月末时间戳的方法

php获取当前月与上个月月初及月末时间戳的方法

php获取当前⽉与上个⽉⽉初及⽉末时间戳的⽅法本⽂实例讲述了php获取当前⽉与上个⽉⽉初及⽉末时间戳的⽅法。

分享给⼤家供⼤家参考,具体如下:当前⽉<?php$thismonth = date('m');$thisyear = date('Y');$startDay = $thisyear . '-' . $thismonth . '-1';$endDay = $thisyear . '-' . $thismonth . '-' . date('t', strtotime($startDay));$b_time = strtotime($startDay);//当前⽉的⽉初时间戳$e_time = strtotime($endDay);//当前⽉的⽉末时间戳上⼀⽉<?php$thismonth = date('m');$thisyear = date('Y');if ($thismonth == 1) {$lastmonth = 12;$lastyear = $thisyear - 1;} else {$lastmonth = $thismonth - 1;$lastyear = $thisyear;}$lastStartDay = $lastyear . '-' . $lastmonth . '-1';$lastEndDay = $lastyear . '-' . $lastmonth . '-' . date('t', strtotime($lastStartDay));$b_time = strtotime($lastStartDay);//上个⽉的⽉初时间戳$e_time = strtotime($lastEndDay);//上个⽉的⽉末时间戳这⾥对关键的就是date函数中的t,它是⽤来获取当前⽉所含天数的,28天,29天,30天,31天。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

PHP获取系统当前时间date函数.txt偶尔要回头看看,否则永远都在追寻,而不知道自己失去了什么。

男人掏钱是恋人关系,女人掏钱是夫妻关系,男女抢着掏钱是朋友关系。

男人爱用眼睛看女人,最易受美貌迷惑;女人爱用心看男人,最易受伤心折磨。

使用函式 date() 实现显示的格式: 年-月-日小时:分钟:秒相关时间参数:a - "am" 或是 "pm"A - "AM" 或是 "PM"d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"D - 星期几,三个英文字母; 如: "Fri"F - 月份,英文全名; 如: "January"h - 12 小时制的小时; 如: "01" 至 "12"H - 24 小时制的小时; 如: "00" 至 "23"g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12"G - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23"i - 分钟; 如: "00" 至 "59"j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31"l - 星期几,英文全名; 如: "Friday"m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12"n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12"M - 月份,三个英文字母; 如: "Jan"s - 秒; 如: "00" 至 "59"S - 字尾加英文序数,二个英文字母; 如: "th","nd"t - 指定月份的天数; 如: "28" 至 "31"U - 总秒数w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六)Y - 年,四位数字; 如: "1999"y - 年,二位数字; 如: "99"z - 一年中的第几天; 如: "0" 至 "365"可以自由设定显示的内容,连接符号或是显示位置,例如date("m-d H") 或者date("dmY");?>等php中的日期处理加入时间:2004-12-18 17:35:22 大小:12 KB 阅读次数:1405PHP中的日期处理转贴:xiaxia 日期:2004-05-26 人气:9我正打算用PHP编写一种帮助处理系统。

我发现我必须知道处理完最后一位客户的问题后已经过去了多长时间?当我过去用ASP时解决这个问题相当简单,ASP有相应的函数 DateDiff 可以给出两个日期间间隔多少月、多少天和多少秒。

当我搜寻完PHP手册后我发现PHP并没有类似的函数。

本文包含以下内容:1、得到目前的日期和时间-我们有多少种方式?2、改变日期显示的方式-日期和时间的显示形式3、转换现在的日期为Unix的时间戳值4、改变日期a. 增加时间b. 减去时间c. 找出两日期之间的间隔5、为PHP添加DateAdd函数6、为PHP添加DateDiff函数**得到目前的日期和时间在 Unix中,时间的表示方式为计算从1970年1月1日零时起所过去的秒数,这称为UNIX 时间戳(Unix Epoch)。

如果我们有这样一段的代码:?echo time();?将返回值958905820而此时的时间为2000年5月 21日12时43分。

你也许会说这相当不错。

当这对我毫无帮助,或者只有一点帮助。

在PHP中,对日期处理的函数都必须用到由time()返回的时间戳值。

同时,由于PHP在Unix和Windows系统中均使用同样的时间戳值,这就允许你不需要修改代码即可在不同的系统间移植。

另外的一个好处是time()函数返回的是一个整数,你可以将其作为整数字段或文本字段存入数据库,而不必使用特别的日期/时间字段。

你已经基本了解了 Unix的时间戳值,现在让我们来展示它的实际用途。

改变日期显示的方式-日期和时间的显示形式PHP提供两个办法来将Unix的时间戳值转换成为有用的数据。

第一个是date()函数。

这个函数有两个参数-第一个字符串用于设定你所希望返回的格式,第二个为Unix 的时间戳值。

格式化字符串通过一些简单的特殊格式化字符来显示你所希望看到的格式的日期和时间。

假设你希望日期以这样的格式显示“18h01 Sunday 21 May”。

我们需要对字符串中的每一部分使用一个特殊格式化字符,你可以从PHP手册中日期和时间函数库中找到。

这样的特殊格式化字符数量不少,他们所表示的类似于星期几、月的英文名、用2位或4位数表示的年份,是否是上午(AM)或下午(PM)以及其他。

对于这个例子我们需要的特殊字符为:‘H’-24 小时制的小时‘i’-分钟‘l’-星期几的英文全名‘d’-本月的第几日‘F’-月份的英文全名因此我们的格式化字符串为”Hhi l d F”, PHP代码为:?echo date ("Hhi l d F" ,time());?当我们执行这段代码,我们发现我们所得到的结果为:180609 Sunday 21 May这样的结果看起来有些奇怪。

让我们再查一下PHP手册,原来’h’所代表的是12 小时制的小时数。

这再次证明了一句真理:“计算机只做你所告诉它该做的,而不是你想要它做的”。

我们有两个选择。

第一个是在h前使用转义字符“”:echo date ("Hhi l d F", time());我们得到这样的结果:18h12 Sunday 21 May这正是我们所要的。

但如果我们在一个十分复杂的句子中需要包含日期和时间,我们是否需要对每个字符使用转义字符?答案当然是不。

我们使用另一个函数strftime()。

strftime()有两个好处。

第一个好处我们并不在本文讨论范围内-如果你使用setlocale()函数,你可以通过strftime得到相应语言的月份的名称。

另外的一个好处是你可以将特别的日期和时间的格式化字符包含在你的字符串中。

这同时也意味着无论你是否要学习date()函数的所有特殊格式化字符,你都必须学习一整套完全不同的格式化字符。

strftime()工作的方式和date()没有什么不同,除了特殊格式化字符的前面必须添加一个百分号%。

如果用strftime()函数,前面例子的代码如下:?echo strftime ("%Hh%M %A %d %b" ,time());?结果为:18h24 Sunday 21 May这也许看起来将简化繁,但考虑一下如果你所需要的显示的为"Today is Sunday 21 May 2000. The time is somewhere close to 18h24." 我想使用date()函数无疑令人感到厌烦。

在开始的时候,我提及我们有两种方式可以从Unix时间戳值中得到有用的数据。

我们刚刚了解了date()和strftime()。

另一个getdate()。

这个函数只需要 Unix 的时间戳值作为参数,而函数的返回值为日期和时间的数组。

下面是一个例子:?$date_time_array = getdate (time());echo $date_time_array[ "weekday"];?返回的结果为:Sunday除了"weekday",该数组的其他部分为:"seconds" –秒"minutes" –分"hours" –小时“mday" - 本月的第几天"wday" -本周的第几天(数字)"mon" -月(数字)"year" –年"yday" - r本年的第几天(数字)"month" -月份全名我们现在可以得到容易辨认的日期和时间。

那么其他呢?**转换现在的日期为Unix的时间戳值通常你必须处理一些日期或时间格式的数据。

打开M$的一个Access数据库,所有的日期都以YYYY/MM/DD的格式存储,加入目前的日前即为2000/05/27。

Mktime()函数可以将一个时间转换成Unix的时间戳值。

函数的格式为:int mktime(int hour, int minute, int second, int month, int day, int year, int [is_dst] );从左往右你必须提供小时、分、秒、月、天和年。

最后一个参数用于指定你是否处于夏令时,此参数是可选的,所以我们将忽略它。

代码如下:?echo mktime (0, 0,0 ,5, 27,2000 );?由于不知道小时、分和秒同时这些参数必须填写,我将其设置为0。

设置为0意味着时间为午夜。

?$access_date = "2000/05/27";//explode() 函数用一个字符串作为分界来分解另一个字符串。

这个例子$access_date通过字符串”/”来分解$date_elements = explode("/" ,$access_date);// 此时// $date_elements[0] = 2000// $date_elements[1] = 5// $date_elements[2] = 27echo mktime (0, 0,0 ,$date_elements [1], $date_elements[ 2],$date_elements [0]); ?我们看一个比从Access数据库单纯获得日期更复杂的情况,我们得到一个以下格式的日期和时间:2000/05/27 02:40:21 PM?// 来自Access的字符串$date_time_string = "2000/05/27 02:40:21 PM";// 将字符串分解成3部分-日期、时间和上午/下午$dt_elements = explode(" " ,$date_time_string);// 分解日期$date_elements = explode("/" ,$dt_elements[ 0]);// 分解时间$time_elements = explode(":" ,$dt_elements[ 1]);// 如果是下午,我们将时间增加12小时以便得到24小时制的时间if ($dt_elements [2]== "PM") { $time_elements[ 0]+=12;}// 输出结果echo mktime ($time_elements [0], $time_elements[ 1], $time_elements[ 2], $date_elements[1], $date_elements[2], $date_elements[0]);?** 修改日期有时我们需要知道6小时以后是什么时间,35天前的日期或者从你最后一次玩Quake3后已过去多少秒。

相关文档
最新文档