PHP日期和时间操作的非常全面的摘要

PHP日期和时间操作的非常全面的摘要
在示例之前,首先介绍了几个核心功能

mktime功能

的mktime()函数返回日期的Unix时间戳。

参数总是代表时间日期,所以is_dst对结果没有影响

参数可以从右到左为空,空参数将被设置为相应的当前GMT值。

语法:mktime(小时,分钟,秒,月,日,年,is_dst)

参数描述

小时是可选的。

分钟是可选的,是一分钟。

第二个是可选的。指定的秒数。

月份是可选的。指定数字的月份。

天是可以选择的。

今年是可选的。今年是规定。在某些系统中,合法值之间有1901-2038.however,PHP 5没有限制。

is_dst是可选的。如果时间在日光节约时间(DST),它被设置为1,否则设置为0,如果它是未知的,它被设置为1。

is_dst参数已被丢弃5.1.0.therefore以来,应该使用新的时区处理功能。

例如:在mktime()函数对数据操作和验证是非常有用的,它可以自动纠正跨界输入

< PHP
回声(日期(m-d-y
回声(日期(m-d-y
回声(日期(m-d-y
回声(日期(m-d-y
>
输出:

jan-05-2002
feb-01-2002
jan-01-2001
jan-01-1999
strtotime函数

strtotime()函数解析日期和时间的任何英文文本描述成一个Unix时间戳。

语法:strtotime(时间,现在)

参数描述

时间指定要解析的时间字符串。

现在用于计算返回值的时间戳。如果省略此参数,则使用当前时间。

一周后:strtotime(1周);

一周前:strtotime(1周);

一个月后:strtotime(1个月);

一天之后:strtotime(1天);

30秒后,strtotime(+ 30秒);

20分钟后,strtotime(20分钟);

12个小时后,strtotime(12小时);
日期函数

日期()函数格式化了一个本地时间/日期。

语法

日期(格式,时间戳)

date_default_timezone_set功能

的date_default_timezone_set()函数在脚本中的所有日期/时间功能设置默认时区。

Date_default_timezone_set (timezone)
例子
第一种情况是没有数据库,只有日期值进行比较,然后您必须完全使用PHP的时间和日期函数,如下所示:

例如,多少天来计算2015-9-5到2015-9-18:

< PHP
StartDate美元= strtotime(2015-9-5 );
EndDate美元= strtotime(2015-9-18 ); / / PHP日期和时间函数已成为日期时间戳是一个第二。只要减少了两个值,然后第二成为一天,比较简单,如下:
$天=圆((($ EndDate至起始) / 3600 / 24);
回声天数;
>
第二个孩子的成长

<
date_default_timezone_set(亚细亚 /上海);
上面的句子 / /设置时区,不是一条线,但zde调试时会有提示,说什么不安全函数…放在。

回声号('y-m-d H:我:')。'今天'。日期(Y),一年的('w')。周;

时间= '2005-11-03 10:08美元;
回声****诞生以来即美元。:;
回声今天是第一次。Lnbsp(daysofnow(合时间),3)。日;
回声今天是第一次。Lnbsp(weeksofnow(合时间),3)。周;
回声今天是第一次。Lnbsp(monthsofnow(合时间),3)。月;
回声今天是第一次。Lnbsp(yearsofnow(合时间),3)。年;
*
$输出= sprintf(今天是d天,今天是d周,今天是d月,今天是d
/ GT;daysofnow (即美元),weeksofnow(即美元),weeksofnow ()
回波输出;
* /

功能weeksofnow(即美元)
{
$时间= strtotime($时间);
fweeks美元=日期('w',$时间);
如果($ fweeks = = 0)fweeks = 7美元;
nweeks美元=日期('w');
如果($ nweeks = = 0)nweeks = 7美元;
$ftemp=strtotime (date ('Y-m-d 00:00:00', $ftime)) -$fweeks*60*60*24;
ntemp美元= strtotime(日期('y-m-d 00:00:00时间()))+(7至nweeks)* 60 * 60 * 24;
/ /回波时间('w',ftemp美元)。…。日期('w',ntemp美元)。;
收益($ ntemp至ftemp) / 60 / 60 / 24 / 7;
}

功能daysofnow(即美元)
{
$时间= strtotime($时间);
返回细胞(ABS(((时间)美元(时间)/(60×60×24))))
}

功能monthsofnow(即美元)
{
$时间= strtotime($时间);
fmonth美元=日期(是的,$时间);
fyear美元=日期(Y,$时间);
nmonth美元=日期(是的);
nyear美元=日期(Y);
结果=(nyear美元美元美元fyear)* 12 + $ nmonth fmonth + 1美元;
返回$结果;
}

功能yearsofnow(即美元)
{
$时间= strtotime($时间);
fyear美元=日期(Y,$时间);
nyear美元=日期(Y);
返回的nyear fyear + 1美元;
}

只需添加以下函数空间使用,不只是为美丽的核心。
功能维(美元的数据,美元数)
{
$结果=修剪(数据);
对(我=美元美元美元数;我> = strlen($数据);$我--){
结果=;
}
返回$结果;
}
>
第三种情况:明天、下个月和明年,你可以使用下面的代码:

明天=日期('y-m-d美元,mktime(0,0,0,日期(M),日期(D)+ 1、日期(Y)))))
下个月美元=日期('y-m ',mktime(0,0,0,日期(我)+ 1、日期(D)+ 1、日期()))));
明年美元=日期(Y,mktime(0,0,0,日期(M),日期(D),日期(Y)+ 1)));

明天再回音;
echo $下月。;
echo $明年。;
第四:工作时间(不包括节假日)

<
StartDate美元=2001-12-12 ;
EndDate美元=2002-11-1 ;

holidayarr美元=阵列(05-01
例如,国庆节的节日日期、数组、51、春节等等。
endweek = 2美元;
周末周末。周末是2,星期日只有1人没有休息,其余0人没有休息。

beginux美元= strtotime($起始日期);
endux美元= strtotime($结束日期);

为(N = beginux美元;$ N <= endux美元美元美元;n = n + 86400){
$星期=日期()
星期一美元=日期(M-D
如果($ endweek){ / /周末休息
如果($ endweek = = 2){
如果(周= = 0美元| |周= = 6美元)继续;
}
如果($ endweek = = 1){
如果($ = 0)继续;
}
}
如果(in_array(美元星期一,美元继续holidayarr));
totalhour美元= 10; / /一天工作10小时
}
回声开始日期:日期美元;
回声结束日期:$ EndDate;
回声花totalhour美元。小时;
>
第五例:给予第二个小时
< PHP
函数转换($秒){

输出=;

小时=地板(美元/ 3600);
remainseconds美元= $秒% 3600;

$分钟=地板($ remainseconds / 60);
$秒= $ - 3600 - $小时* $分钟* 60;

如果($ = 3600){
输出=小时;
输出= $分钟;
}

如果($ $秒$ < 3600 > = 60){
输出= $分钟;
}

返回$输出秒;
}

回声变换(3231803);

>
以上是给大家提供php日期和时间操作的所有例子,希望能帮助大家学习
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部