PHP date函数——格式化一个本地时间/日期,date函数可格式化一个本地时间/日期。
PHP date函数 语法
string date ( string format , int timestamp)
参数format为date函数的格式化选项;参数timestamp指定字符串的格式,其中参数timestamp是可选的,默认值为time(),即如果没有给出时间戳,则使用本地当前时间。
参数format的格式化选项如表所示。
有效的时间戳典型范围是格林威治时间1901年12月13日20:45:54到2038年1月19日03:14:07。(此范围符合32位有符号整数的最小值和最大值)。在Windows系统中此范围限制为从1970年1月1日到2038年1月19日。
PHP date函数 示例
应用date()函数获取系统当前时间,时间的格式为“yyyy- mm- dd hh:ii:ss”
<?php
date_default_timezone_set("Asia/Hong_Kong");
data=date("Y-m-d h:i:m");
echodata;
?>
运行结果
2021-08-27 08:42:08
由于在PHP语言中默认设置的是标准的格林威治时间(即采用的是零时区),所以要获取本地当前的时间必须更改PHP语言中的时区设置。更改PHP语言中的时区设置有两种方法:(1)修改php.ini文件中的设置,找到[date]下的“;date.timezone =”选项,将该项修改为“date.timezone =Asia/Hong_Kong”,然后重新启动Apache服务器。(2)在应用程序中,在使用时间/日期函数之前添加如下函数“date_default_timezone_set(“Asia/Hong_Kong”);”即可。
应用date函数取得当前是星期几,利用switch语句进行操作,并通过echo语句输出信息提示
其代码如下:
<?php
a = date("l"); //取得当前是星期几
switch(a){
case "Monday"; //当前如果是星期一
echo "今天是星期一,新的一周开始了"; //输出
break;
case "Tuesday"; //当前如果是星期二
echo "今天是星期二,晚上要好好睡一觉"; //输出
break;
case "Wednesday"; //当前如果是星期三
echo "今天是星期三,晚上去看场电影"; //输出
break;
case "Thursday"; //当前如果是星期四
echo "今天是星期四,和同学聚餐"; //输出
break;
case "Friday"; //当前如果是星期五
echo "如果是双休该有多好啊!"; //输出
break;
case "Saturday"; //当前如果是星期六
echo "今天是星期六,明天就放假了哈哈哈"; //输出
case "Sunday"; //当前如果是星期日
echo "今天是星期天,放松一整天"; //输出
}
?>
运行结果:
如果是双休该有多好啊!
应用date()函数设置不同的format值,输出不同格式的时间
代码如下:
<?php
echo "单个变量:".date("m 月"); //输出单个日期
echo "<p>";
echo "组合变量:".date("Y-m-d"); //输出组合参数
echo "<p>";
echo "详细的日期及时间:".date("Y-m-d H:i:s"); //输出详细的日期和时间参数
echo "<p>";
echo "中文格式日期及时间:".date("Y 年m 月d 日 H 时i 分s 秒"); //输出中文格式时间
?>
运行结果:
单个变量:08 月<p>组合变量:2021-08-27<p>详细的日期及时间:2021-08-27 00:45:33<p>中文格式日期及时间:2021 年08 月27 日 00 时45 分33 秒
在date()函数中转义字符
本实例主要应用date()函数对字符“Today is”进行转义,避免字符按照日期格式进行输出,并输出日期。要实现对字符的转义,只要在字符前加上反斜线即可,如果加上反斜线后的字符本身就是一个特殊序列,还需要转义反斜线。
本实例的关键代码如下:
<?php
echo date("\\T\o\d\a\y \i\s Y M jS l");
?>
获取未来和过去的时间
本实例主要应用date()函数和mktime()函数获取未来或者过去的时间,本实例的关键代码如下:
<?php
today = mktime(0,0,0,date("m") ,date("d"),date("Y")); //获取当前时间lastmonth = mktime(0,0,0,date("m")-1,date("d"), date("Y")-1); //获取过去时间
nextyear = mktime(0,0,0,date("m")+1, date("d"), date("Y")+1); //获取未来时间
//应用date()函数输出时间
echo date("Y-m-d",lastmonth);
echo date("Y-m-d",today);
echo date("Y-m-d",nextyear);
?>
通过mktime()函数获取系统当前时间
要获取准确的当地时间,可以通过date()函数和mktime()函数结合使用来完成,在本实例中通过date()函数和mktime()函数共同来获取准确的当地时间。代码如下:
<?php
//在获取的标准时间上加8 个小时
date = mktime(date("H")+8,date("i"),date("s"),date("m"),date("d"), date("Y"));
echo date("Y-m-d H:i:s",date);
?>
使用date()函数格式化日期
应用date()函数可以对日期进行格式化,应用不同的参数,能够输出不同格式的日期。其代码如下:
<?php
//使用不同的参数,格式化输出当前日期
echo date("F j, Y, g:i a")."<br>"; //结果为:October 22, 2011, 12:49 am
echo date("m.d.y")."<br>"; //结果为:10.22.08
echo date("j, n, Y")."<br>"; //结果为:22, 10, 2011
echo date("Y-m-d")."<br>"; //结果为:2011-10-22
echo date('h-i-s, j-m-y,我的一天')."<br>"; //12-49-17, 22-10-08,我的一天
echo date('\I\t \i\s \t\h\e jS \d\a\y.')."<br>";//结果为:It is the 22nd day.
echo date("D M j G:i:s T Y")."<br>"; //结果为:Wed Oct 22 0:49:17 UTC 2011
echo date('H:m:s \M \i\s\ \m\o\n\t\h')."<br>"; //结果为:00:10:17 M is month
echo date("H:i:s 这是当前时间"); //结果为:00:49:17 这是当前时间
?>