Maison  >  Article  >  développement back-end  >  php开发之时间

php开发之时间

WBOY
WBOYoriginal
2016-08-08 09:27:14914parcourir

1,获取本地时间戳
php应用mktime()函数将一个时间转换为UNIX的时间戳值。时间戳是一个长整数,包含了从UNIX 纪元(1070年1月1日),好多时间都是按这个为起始点的,感兴趣的朋友可以搜搜看看,里面肯定有故事哦。
mktime()函数语法格式如下:
int mktime(int time,int minute,int second,int month,int day,int year,int [is_dis])
mktime()函数的参数说明如下表:

2,获取时间和日期

在php中通过time()函数当前的UNIX时间戳。语法格式如下:
int time(void)
在php中date()函数用于获取当前的时间和日期。date()函数格式如下:
date(string format,int timestamp)
关于日期格式函数如下表所示:

getdate()函数主要用于获取日期中的相关信息。getdate()格式如下:
array getdate(int timestamp)
返回的数组元素如下表所示:

具体示例代码如下:

<code><span><span><?php </span><span>$array</span> = getdate();
<span>echo</span><span>$array</span>[<span>'year'</span>].<span>"-"</span>.<span>$array</span>[<span>'mon'</span>].<span>"-"</span>.<span>$array</span>[<span>'mday'</span>];
<span>?></span></span></span></code>

运行结果如下:

3,检查日期的有效性
检查日期的有效性主要通过 checkdate()函数来实现的,具体语法如下:
bool checkdate(int month,int day,int year)
下面我们用代码来实现一下:

<code><span><?php </span><span>$year</span> =<span>2011</span>;
<span>$month</span> =<span>2</span>;
<span>$day</span> =<span>31</span>;
<span>echo</span> var_dump(checkdate(<span>$day</span>,<span>$month</span>,<span>$year</span>));
<span>?></span></span></code>

运行结果下:

4,输出格式化的时间和日期
主要是通过date() 函数来实现的。
格式参数如下:

5,先是本地化的时间和日期

时间和日期的本地化主要是通过 setlocale()函数来实现的。
具体语法如下:
string setlocale(string category,string locale)
参数category 的选项如下表所示:

参数locale如果为空,就会使用系统的变量的locale或lang的值,否则就会应用locale所指定的本地化环境。如en_US为美国本地化环境,chs指简体中文,cht指繁体中文。

strftime()函数
strftime()函数根据本地化环境来格式化输出的时间和日期
语法格式如下:
string strftime( string format,int timestamp)



具体示例代码如下:

<code><span><?php </span>setlocale(LC_ALL,<span>"en_US"</span>);
<span>echo</span><span>"美国格式:"</span>.strftime(<span>"Today is %A"</span>).<span>"\n"</span>;
setlocale(LC_ALL,<span>"chs"</span>);
<span>echo</span><span>"中文简体格式:"</span>.strftime(<span>"今天是:%A"</span>).<span>"\n"</span>;
setlocale(LC_ALL,<span>"cht"</span>);
<span>echo</span><span>"繁体中文格式:"</span>.strftime(<span>"今天是 :%A"</span>).<span>"\n"</span>;


<span>?></span></span></code>

运行结果如下:

6,将时间和日期解析为UNIX时间戳
主要是通过strtotime()函数来实现的。
int strtotime(string time,[,int time])
该函数有两个参数,如果time是绝对时间,那么now参数不起作用。如果time参数的格式为相对时间,那么对应的时间就是由now来提供的。如果没有提供now时间,那么对应的时间就是当前的时间。如果解析失败返回false。
示例代码如下:

<code><span><span><?php </span><span>echo</span> strtotime(<span>"now"</span>).<span>"\n"</span>;    <span>//当前时间的时间戳</span><span>echo</span><span>"输出时间:"</span>.date(<span>"Y-m-d H:i:s"</span>,strtotime(<span>"now"</span>)).<span>"\n"</span>;  <span>//按照格式要求输出当前的时间</span><span>echo</span> strtotime(<span>"21 May 2009"</span>).<span>"\n"</span>;     <span>//输出指定时间的时间戳</span><span>echo</span><span>"输出时间:"</span>.date(<span>"Y-m-d H:i:s"</span>,strtotime(<span>"21 May 2009"</span>)).<span>"\n"</span>;  <span>//按照格式输出指定时间的时间</span><span>echo</span> strtotime(<span>"+3 day"</span>).<span>"\n"</span>;  <span>// 输出三天以后的时间戳</span><span>echo</span><span>"输出时间:"</span>.date(<span>"Y-m-d H:i:s"</span>,strtotime(<span>"+3 day"</span>)).<span>"\n"</span>;  <span>//按照格式输出三天后的时间</span><span>echo</span> strtotime(<span>"+1 week"</span>).<span>"\n"</span>;    <span>//输出一周以后的时间戳</span><span>echo</span><span>"输出时间:"</span>.date(<span>"Y-m-d H:i:s"</span>,strtotime(<span>"+1 week"</span>)).<span>"\n"</span>;   <span>//按照格式输出一周以后的时间</span><span>echo</span> strtotime(<span>"+1 week 2 days 3 hours 4 minutes"</span>).<span>"\n"</span>;
<span>echo</span> strtotime(<span>"next week"</span>).<span>"\n"</span>;
<span>echo</span> strtotime(<span>"last Monday"</span>).<span>"\n"</span>;


<span>?></span></span></span></code>

运行结果如下:

以上就介绍了php开发之时间,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn