Heim  >  Artikel  >  Backend-Entwicklung  >  php开发之时间

php开发之时间

WBOY
WBOYOriginal
2016-08-08 09:27:14856Durchsuche

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教程有兴趣的朋友有所帮助。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn