• 技术文章 >后端开发 >php教程

    学习php中时间戳和日期格式的转换

    2016-07-25 09:05:27原创512
    1. /*-------------------------------------------------------
    2. *
    3. * Copyright (c) 2011 Baidu.com, Inc. All Rights Reserved
    4. * $Id$
    5. *
    6. *-------------------------------------------------------*/
    7. //时间戳转日期
    8. $date_time_array = getdate(1297845628); //1311177600 1316865566
    9. $hours = $date_time_array["hours"];
    10. $minutes = $date_time_array["minutes"];
    11. $seconds = $date_time_array["seconds"];
    12. $month = $date_time_array["mon"];
    13. $day = $date_time_array["mday"];
    14. $year = $date_time_array["year"];
    15. echo "year:$year\nmonth:$month\nday:$day\nhour:$hours\nminutes:$minutes\nseconds:$seconds\n";
    16. //正常日期转时间戳
    17. echo mktime(0, 0, 0, 9, 18, 2011) . "\n";
    18. echo mktime(0, 0, 0, 9, 25, 2011) . "\n";
    19. /*
    20. time();
    21. 是获得当前时间,但获得的是一整型
    22. */
    23. //可以对此进行格式化
    24. echo "time()显示年月日时分秒:" . date("Y-m-d H:i:s", time()) . "\n";
    25. //这样连时,分秒一起显示
    26. echo "time()只显示年月日:" . date("Y-m-d ", time()) . "\n"; //只年示年月日
    27. echo "时间戳格式化:" . date("Y-m-d H:i:s", 1297845628) . "\n"; //直接使用时间戳

    28. //把正常日期转成时间戳了,这里如果有时分秒也是同理,

    29. $year=((int)substr("2008-12-04",0,4));//取得年份
    30. $month=((int)substr("2008-12-04",5,2));//取得月份
    31. $day=((int)substr("2008-12-04",8,2));//取得几号
    32. echo mktime(0,0,0,$month,$day,$year);

    33. /* vim: set ts=4 sw=4 sts=4 tw=100 noet: */

    34. ?>

    复制代码

    注意: 1)、PHP时间大的来分有两种,一是时间戳类型(1228348800),二是正常日期格式(2008-12-4)

    2)、php5.1以上时间戳会与实际时间相差8小时,解决办法如下: 1、最简单的方法就是不要用php5.1以上的版本--显然这是不可取的方法!!! 2、修改php.ini。打开php.ini查找date.timezone 去掉前面的分号= 后面加Asia/Shanghai,重启apache服务器即可--缺点就是如果程序放到别人的服务器上,不能修改php.ini,那就奈何不得了。 3、在程序中添加时间的初始化的语句的 即:“date_default_timezone_set("Asia/Shanghai"); ”这个可以由程序员任意设置,我的推荐。 时区标识符,大陆内地可用的值是:PRC,Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi (依次为中国,重庆,上海,乌鲁木齐) ,Etc/GMT-8,Asia/Harbin 港台地区可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次为澳门,香港,台北) 还有新加坡:Asia/Singapore 这样就可以实现输出的是北京时间了。

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:学习php中时间戳和日期格式的转换
    上一篇:查找字符串中是否包含某些字符的函数strstr及其它 下一篇:php去掉字符串首尾空格的方法
    千万级数据并发解决方案

    相关文章推荐

    • PHP实现算式验证码和汉字验证码实例_PHP• dedecms函数分享之获取某一栏目所有子栏目_PHP• php共享内存段示例分享_PHP• PHP弹出提示框并跳转到新页面即重定向到新页面_PHP• php中autoload的用法总结_PHP
    1/1

    PHP中文网