PHP获取当前时间、年份、月份、日期和天数

PHP获取当前时间、年份、月份、日期和天数 PHP笔记 第1张

获取当前时间,需要用到 PHP Date() 函数

PHP Date() 把时间戳格式化为更易读的日期和时间。

语法:

date(format,timestamp)

其中参数 format 为显示格式,参数 timestamp 为时间戳,是可选择的,默认为 time() ,即如果没有给出时间戳则使用本地当前时间。

format 格式参数在这里简单介绍几个:

一些常用于日期的字符:

Y - 完整表示份(四位数字:2019)

y - 表示份(两位数字:19)

F - 表示份(完整的文本格式: January 或者 March)

M - 表示份(3个字母:Jun)

m - 表示份,有前导0(数字:04)

n - 表示份,无前导0(数字:4)

d - 表示月份中的第几,有前导0(01-31)

j -  表示月份中的第几,无前导0(1-31)

D - 表示星期(3字母:Wed)

l - 表示星期几(完整英文:Wednesday)

w - 表示星期中的第天(数字,0表示星期天)

W - 表示一中的第几周

z - 表示一中的第几天(0-366)

实例:

<?php
    echo "<p>今天是:" . date("Y/m/d") . "</p>";
    echo "<p>今天是:" . date("Y.m.d") . "</p>";
    echo "<p>今天是:" . date("Y-m-d") . "</p>";
    echo "<p>今天是:" . date("l") . "</p>";
?>

运行结果:

PHP获取当前时间、年份、月份、日期和天数 PHP笔记 第2张

如果想要中文年月日,可以这样写:

echo "现在时间是:" . date("Y年m月d日");

运行结果:

今天是:2019年04月24日

获得简单的时间:

常用于时间的字符:

H - 24小时格式,有前导0(08,18)

h - 12小时格式,有前导0(06,11)

G - 24小时格式,无前导0(9,17)

g - 12小时格式,无前导0(6,12)

i - 表示分钟,有前导0(00-59)

s - 表示秒,有前导0(00 -59)

A - 大写的午前和午后(AM 或 PM)

a - 小写的午前和午后(am 或 pm)

I - 判断是否为夏令时

实例:

<?php
    echo "现在时间是:" . date("h:i:sa");
?>

运行结果:

PHP获取当前时间、年份、月份、日期和天数 PHP笔记 第3张

获得时区:

如果需要基于具体位置的准确时间,可以设置要用的时区。

下面是把时区设置为 "Asia/Shanghai",然后以指定格式输出当前时间:

实例:

<?php
    date_default_timezone_set("Asia/Shanghai");
    echo "当前时间是:" . date("h:i:sa");
?>

getdate:获取日期信息

通过 getdate() 函数可以获取日期信息,而该函数返回值为一个数组,其中包括指定的日期和时间信息。如果没有给出时间戳,则输出的是本地当前的日期和时间。 声明如下:

array getdate(int timestamp);

<?php
    print_r(getdate());
?>

checkdate:检验日期的有效性

程序开发过程中,在需要设计填写日期和时间的模块中,有时会因为录入失误,而产生错误。为了避免些类问题的出现,在设计时就要对日期进行检验,就是利用  checkdate 函数。声明如下:

bool checkdata(int month,int day,int year);

如果检验有效,返回 true ,否则返回 falsemonth 的有效值在1-12,day 在给定的月之内,包括闰年,year 的值在 1-32767 之间。

<?php
    echo checkdate(6, 25, 2017);//1
?>

time:获取当前时间戳

获取当前时间戳通过 time() 函数来实现。声明如下:

int time();
<?php
    echo time();//获取当前时间的时间戳
?>

通过 PHP mktime() 创建日期

date() 函数中可选的时间戳参数规定时间戳。

mktime() 函数返回日期的 Unix 时间戳。Unix 时间戳包含 Unix 纪元(1970 年 1 月 1 日 00:00:00 GMT)与指定时间之间的秒数。

语法:

mktime(hour,minute,second,month,day,year)

使用 mktime() 函数中的一系列参数来创建日期和时间:

实例:

<?php
    $d=mktime(9, 12, 31, 6, 10, 2015);
    echo "创建日期是:" . date("Y-m-d h:i:sa", $d);
?>

运行结果:

创建日期是:2015-06-10 09:12:31AM

通过 PHP strtotime() 用字符串来创建日期

PHP strtotime() 函数用于把人类可读的字符串转换为 Unix 时间。

语法:

strtotime(time,now)

通过 strtotime() 函数创建日期和时间:

实例:

<?php
    $d=strtotime("10:38pm April 15 2015");
    echo "创建日期是 " . date("Y-m-d h:i:sa", $d);
?>

PHP 在将字符串转换为日期这方面非常聪明,所以您能够使用各种值:

实例:

<?php
    $d=strtotime("tomorrow");
    echo date("Y-m-d h:i:sa", $d) . "<br>";
    
    $d=strtotime("next Saturday");
    echo date("Y-m-d h:i:sa", $d) . "<br>";
    
    $d=strtotime("+3 Months");
    echo date("Y-m-d h:i:sa", $d) . "<br>";
?>

运行结果:

2019-04-25 12:00:00am
2019-04-27 12:00:00am
2019-07-24 05:53:08pm

不过,strtotime() 并不完美,所以请记得检查放入其中的字符串。

更多日期实例

输出下周六的日期:

实例:

<?php
    $startdate = strtotime("Saturday");
    $enddate = strtotime("+6 weeks",$startdate);
    
    while ($startdate < $enddate) {
      echo date("M d", $startdate),"<br>";
      $startdate = strtotime("+1 week", $startdate);
    }
?>

输出七月四日之前的天数:

实例:

<?php
    $d1=strtotime("December 31");
    $d2=ceil(($d1-time())/60/60/24);
    echo "距离十二月三十一日还有:" . $d2 ." 天。";
?>

网站自动版权年份

使用 date() 函数在您的网站上自动更新版本年份:

实例:

© 2010-<?php echo date("Y")?>


赞 (1)
分享到: +

评论 沙发

Avatar

换个身份

  • 昵称 (必填)
  • 邮箱 (选填)