PHP学习笔记10(日期时间函数)

(1)查看日期函数拓展

  • phpinfo()

phpinfo();
  • 打开上述页面之后,可以看到以下,证明已经安装日期拓展
    PHP学习笔记10(日期时间函数)_第1张图片
  • 浏览器输入php.net访问php的文档

(2)设置时区

  • 方式一:修改配置文件php.ini
    • D:\ITSoft\wamp64\bin\php\php7.0.10\php.ini
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = PRC

; http://php.net/date.default-latitude
;date.default_latitude = 31.7667

; http://php.net/date.default-longitude
;date.default_longitude = 35.2333

; http://php.net/date.sunrise-zenith
;date.sunrise_zenith = 90.583333

; http://php.net/date.sunset-zenith
;date.sunset_zenith = 90.583333
  • 方式二:date_default_timezone_set


echo '当前时区'.date_default_timezone_get(); //UTC

var_dump(date_default_timezone_set('Asia/Shanghai'));//true

echo '当前时区'.date_default_timezone_get(); //Asia/Shanghai
  • 方式三:init_set
    • 设置指定配置选项的值。这个选项会在脚本运行时保持新的值,并在脚本结束时恢复


echo ini_get('date.timezone'); //UTC

ini_set('date.timezone','Asia/Shanghai');

echo ini_get('date.timezone'); //Asia/Shanghai

(3)常用时间函数

  • 常用参数
    PHP学习笔记10(日期时间函数)_第2张图片
  • date使用


ini_set('date.timezone','Asia/Shanghai');

echo date('Y年m月d日 H:i:s');//分隔符随意
echo date('H:i:s a');//am pm
echo date('w');//星期

//判断是否闰年
$runNian = date('L');
if($runNian){
    echo '是闰年';
}else{
    echo '不是闰年';
}
  • time mktime的使用
//获取当前时间戳
echo time();//1513757887

//时间戳转换成date
echo date('Y-m-d H:i:s',time());

//一天后的时间
echo date('Y-m-d H:i:s',time()+24*60*60);

//获取指定日期的时间戳
echo mktime(0,0,0,2,1,2016);//(H i s n j Y) 2016-2-1 0:0:0的时间戳 可以依次省略
  • strtotime使用
date('Y-m-d H:i:s',time());//2017-12-20 08:30:58
echo date('Y-m-d H:i:s',strtotime('+1 day'));//2017-12-21 08:30:58
echo date('Y-m-d H:i:s',strtotime('-5 days'));//2017-12-15 08:30:58

echo date('Y-m-d H:i:s',strtotime('+1 month'));//2017-01-20 08:30:58
echo date('Y-m-d H:i:s',strtotime('+5 months'));//2017-05-20 08:30:58
echo date('Y-m-d H:i:s',strtotime("last Monday"));//2017-12-18 08:30:58

echo strtotime("+1 week 2 days 4 hours 2 seconds"), "\n";
  • microtime()


echo microtime(); //0.85666200 1513758991 两部分微妙值 时间戳
echo microtime(true);// 1513759077.8005
  • 其他函数
//获取当前日期
print_r(getdate());
// 输出如下
//Array (
//    [seconds] => 53
//    [minutes] => 40
//    [hours] => 8
//    [mday] => 20
//    [wday] => 3
//    [mon] => 12
//    [year] => 2017
//    [yday] => 353
//    [weekday] => Wednesday
//    [month] =>
//    December [0] => 1513759253
//)

//验证日期的合法性
var_dump(checkdate(1,32,2014));//false 

(4)时间控件的使用

  • test.php
    PHP学习笔记10(日期时间函数)_第3张图片

<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>H5新增表单控件title>
head>
<body>
    <h1>H5新增表单日期时间控件h1>
    <form action='doAction.php' method='post'>
        <input type="date" name="datetime1" id="time1"/><br>
        <input type="submit" value="提交"/>
    form>
body>
html>
  • doAction.php


print_r($_POST);

你可能感兴趣的:(php)