本文作者:心月

php中常用时间处理函数汇总

心月IT博客 2019-04-09
php中常用时间处理函数汇总摘要:PHP5之后的php程序都要设置时区,否则在运行的时候会报错。php设置时区的方法有两类:php ini配置函数设置时区(需要有修改配置文件的权限);在项目中通过函数设置。

1、时区设置

PHP5之后的php程序都要设置时区,否则在运行的时候会报错。php设置时区的方法有两类:php.ini配置函数设置时区(需要有修改配置文件的权限);在项目中通过时间函数设置。

①配置文件中设置时区:在php.ini配置文件中找到“date.timezone”,将其值修改即可(在国内常用的时区值有3个:Asia/Shanghai、Asia/Chongqing、PRC,分别表示上海时区,重庆时区以及中华人名共和国时区,在设置时区时随便选哪个都可以)。

②通过函数设置时区:

a.date_default_timezone_set('Asia/Shanghai');//设置默认时区,前面说的3个时区值随便选填一个都可以。

b.ini_set($varname, $newvalue);

    这个函数的作用是为一个配置选项设置一个新值,$varname为配置选项名,$newvalue为新设置的值。

比如这里设置时区:ini_set('date.timezone','Asia/Shanghai');


2、常用时间函数

①checkdate(int $month , int $day , int $year):检验日期的有效性,有效日期返回true,无效日期返回false。($month:月份1-12,$day:每月的天数范围,$year:年份1-32767)

checkdate()检验日期的有效性

②time():时间戳函数,返回当前的 Unix 时间戳。

③date():将时间戳格式化。

date()格式化时间戳

④strtotime():将英文日期时间转换为Unix时间戳。

strtotime():将英文日期时间转换为Unix时间戳

⑤mktime ([ int $hour = date("H") [, int $minute = date("i") [, int $second = date("s") [, int$month = date("n") [, int $day = date("j") [, int $year = date("Y") [, int $is_dst = -1 ]]]]]]] )

根据给出的参数返回 Unix 时间戳。时间戳是一个长整数,包含了从 Unix 纪元(January 1 1970 00:00:00 GMT)到给定时间的秒数。

参数可以从右向左省略,任何省略的参数会被设置成本地日期和时间的当前值。

参数从左到右依次是:时 分 秒 月 日 年

mktime()根据给出的参数返回 Unix 时间戳

⑥getdate(int $timestamp = time()): 根据 timestamp 得出的包含有日期信息的关联数组 array。如果没有给出时间戳则认为是当前本地时间。

getdate()获取时间关联数组信息


⑦microtime():返回当前 Unix 时间戳和微秒数.本函数仅在支持 gettimeofday() 系统调用的操作系统下可用.

microtime()返回当前 Unix 时间戳和微秒数


⑧strftime($format, $timestamp): 以指定格式格式化给定时间戳,若没有给定时间戳则用当前本地时间

strftime()以指定格式格式化给定时间戳

$format的参数选择可参考php官方网站:https://www.php.net/manual/zh/function.strftime.php


⑨gettimeofday(): 取得当前时间,返回一个关联数组,包含有系统调用返回的数据。

当参数设置为true时,会返回一个浮点数而不是一个数组。

gettimeofday()取得当前时间返回一个关联数组


⑩gmdate(): 同 date() 函数完全一样,只除了返回的时间是格林威治标准时(GMT)。

gmdate(): 同 date() 函数完全一样


easter_date(int $year): 返回指定年份的复活节午夜时的Unix时间戳。

easter_date(int $year): 返回指定年份的复活节午夜时的Unix时间戳


easter_days(int $year): 得到指定年份的3月21日到复活节之间的天数。

得到指定年份的3月21日到复活节之间的天数


gmmktime(): 和 mktime() 完全一样,只除了返回值是格林威治标准时的时间戳。

和 mktime() 一样,参数可以从右到左依次空着,空着的参数会被设为相应的当前 GMT 值。



文章版权及转载声明:

本文由 心月IT技术博客 博主整理于 2019-04-09
若转载请注明原文及出处:https://www.xinyueseo.com/other/231.html

分享到:
赞(
发表评论
快捷输入:

验证码

    评论列表 (有 0 条评论,人围观)参与讨论