zoukankan      html  css  js  c++  java
  • PHP学习十二--日期和时间

    日期时间函数库是PHP内置函数库,可以通过日期时间函数库获得服务器的日期时间相关内容。

    1.在地球分为24个时区,每个时区都有自己的本地时间。在国际无线电通信领域,使用一个统一的时间,成为通用协调时间---UTC,与格林威治标准时间相同。PHP中默认设置的是格林威治标准时间,即采用零时区,因此要获取本地当前时间必须更改PHP语言中的时区设置。

    更改PHP语言中的时区设置有两种方法:

    (1).修改php.ini文件中的设置,找到【date】下的date.timezone = 选项,修改为date.timezone = Asia/HongKong。然后重新启动阿帕奇服务器。

    (2).在应用程序中,在使用时间日期函数之前添加如下函数:

    date_default_timezone_set(timezone);

    参数timezone为PHP可识别的时区名称,如果PHP无法识别,则系统采用UTC时区。

    (3).通过ini_set()动态设置时区。

    2.(1).获取本地化时间戳

    PHP中使用mktime()函数将一个时间转换为UNIX的时间戳。

    语言格式:int mktime(int hour,int minute,int second,int mouth,int day,int year,int is_dst);

    echo "mktime 函数返回的时间戳:".mktime();                               //函数返回的时间戳:120128....

    echo "当前的日期为:".date("Y-m-d",mktime())"<p>"                   //当前的日期为:2008-01-23

    (2).获取当前时间戳

    语法格式:int time(void)    返回值为从UNIT纪元(格林威治时间1970年1月1日)到当前时间的秒数。

    (3).获取当前日期和时间

    语法格式:date(string format[int timestamp]);

    (4).获取日期信息

    array getdate(int timestamp);

    getdate()函数返回数组形式的日期和时间信息,如果没有参数timestamp,则以当前时间为准。

    关联数组元素:seconds,minutes,hours,mday(月份中的第几天,返回1~31),wday(星期中的第几天,返回值为0~6),mon,year,yday(一年中的第几天),weekday,mouth

    $arr = getdate();

    echo $arr[year]."-".$arr[mon]."-".$arr[mday]."";       //2017-03-30

    (5).检测日期的有效性

    PHP中内置了日期检查函数,就是checkdate()函数

    语法格式:bool checkdate(int mouth,int day,int year);

    (6).输出格式化的日期和时间

    date() 函数用于格式化时间,返回一个字符串。

    语法:

    string date( string format [, int timestamp] )
    

    参数 format 表示时间格式化的方式,可能的方式如下:

    格式化方式说明:  
    格式化方式说明
    Y 4位数字年,y为2位数字,如99即1999年
    m 数字月份,前面有前导0,如01。n 为无前导0数字月份
    F 月份,完整的文本格式,例如 January 或者 March
    M 三个字母缩写表示的月份,例如 Jan 或者 Mar
    d 月份中的第几天,前面有前导0,如03。j 为无前导0的天数
    w 星期中的第几天,以数字表示,0表示星期天
    z 年份中的第几天,范围0-366
    W 年份中的第几周,如第32周
    H 24小时格式,有前导0,h为12小时格式
    G 24小时格式,无前导0,g为对应12小时格式
    i 分钟格式,有前导0
    s 秒格式,有前导0
    A 大写上下午,如AM,a为小写

    可选参数 timestamp 表示时间戳,默认为 time() ,即当前时间戳。

    我们可以通过 date() 函数提供的丰富格式化来显示需要的时间日期,如下面的例子:

    date("Y-m-d",time());		//显示格式如 2008-12-01
    date("Y.m.d",time());		//显示格式如 2008.12.01
    date("M d Y",time());		//显示格式如 Dec 01 2008
    date("Y-m-d H:i",time());	//显示格式如 2008-12-01 12:01

     (7).显示本地化的日期和时间

    使用setlocate()函数和strtime()函数来设置本地化环境和格式化输出日期和时间。

    1.setlocate()函数,可以改变PHP默认的本地化环境

    string setlocate(string category);

    LC_ALL 包含了下面所有的设置本地化规则

    LC_COLLATE 字符串比较

    LC_CTYPE  字符串分类和转换,如大小写转换

    LC_MONETARY 本地化环境的货币形式

    LC_NUMERIC   本地化环境的数值形式

    LC_TIME   本地化环境的时间形式

    2.strtime()函数,根据本地化环境设置来格式化输出时间和日期

    string strtime(string formart ,int timestamp);

    3.将日期和时间解析为UNIX时间戳

    int strtotime(string time);

    echo strtotime("now");当前时间的时间戳//距离1970.01.01的所有秒数

    date("Y-m-d",strtotime("now"));       //2017-03-31

  • 相关阅读:
    java反射机制
    jdbc连接mysql时发出警告:WARN: Establishing SSL connection without server's identity verification is not recommended...
    java,jdbc操作数据库
    vue.js 第十课-第十六课
    vue.js 第九课
    vue.js 第八课
    如何扒代码。。。
    vue.js第七课
    工作总结
    滤镜 filter:gray 变灰色
  • 原文地址:https://www.cnblogs.com/moxuexiaotong/p/6646995.html
Copyright © 2011-2022 走看看