php常用日期时间函数实例小结


Posted in PHP onJuly 04, 2019

本文实例讲述了php常用日期时间函数。分享给大家供大家参考,具体如下:

时间戳

时间戳我就不赘述了,手册里有,就是能精确的表示一个时间点。我在做项目的时候经常用时间戳来表示数据,这样比较方便,如果保存为日期时间型的数据,显示的时候可能比较省事,但是如果是获取这个日期的某个年份或月份,就比较麻烦了。

<?php
echo time();//返回一个以秒为单位的时间戳 :1467968841
echo microtime(true);//返回一个以毫秒为单位的时间戳 :1467968841.4155
echo microtime();//返回带毫秒和秒的时间戳 :0.41553000 1467968841,前面是毫秒小数,后面是秒数
?>

时间戳格式化

1、date($format,$timestamp):在当前使用的时区下格式化时间戳

2、gmdate($format,$timestamp):指定UTC时区下格式化时间戳,不论用户使用什么时区

时区的概念:时区是按照地点设置的时间,中国属于东8区,所以比UTC(格林尼治时间)要快8个小时

获取和设置时区

date_default_timezone_get()//获得当前使用的时区,默认情况下应该是UTC
date_default_timezone_set(‘Asia/Shanghai')//设置当前的时区为亚洲上海
<?php
echo date("Y-m-d 星期N H:i:s a",$time);//2016-07-08 星期5 10:44:26 am(默认时区下)
echo date("Y-m-d 星期N H:i:s a",0);//1970-01-01 星期4 00:00:00(默认时区下)
echo gmdate("Y-m-d 星期N H:i:s a",0);//1970-01-01 星期4 00:00:00(全部在UTC时区下)
?>

解析时间格式变为时间戳

1、mktime():将制定的时间格式解析成时间戳

<?php
echo mktime(19,15,0,7,8,2016);//获取2016年8月7日19时15分0秒的时间戳
?>

2、strtotime():将任何英文文本的日期时间描述解析为时间戳

<?php
  echo strtotime("2016-7-8 19:15:0");//获取2016年8月7日19时15分0秒的时间戳
  echo strtotime("now");//获取现在得时间戳
  echo strtotime("+1 day");//当前时间往后推一天的时间戳
  echo strtotime("-1 day");//当前时间往前推一天的时间戳
?>

3、checkdate():检测输入的日期是否存在

<?php
var_dump(checkdate(2,29,2015));//2015年2月29日不存在,所以是false
var_dump(checkdate(2,29,2016));//2016年2月29日存在,所以是true
?>

案例:计算两个日期的日期差数

1、用时间戳来计算

<?php
$day1 = "2016-7-8";
$day2 = "2016-7-1";
echo (strtotime($day1) - strtotime($day2))/(24 * 60 * 60);
?>

2、用DateTime类来计算

<?php
$datetime1 = new DateTime('2016-7-8');
$datetime2 = new DateTime('2016-7-1');
$interval = $datetime2->diff($datetime1);
echo $interval->format('%R%a days');
?>
PHP 相关文章推荐
PHP4之COOKIE支持详解
Oct 09 PHP
php类
Nov 27 PHP
PHP连接SQLSERVER 注意事项(附dll文件下载)
Jun 28 PHP
使用迭代器 遍历文件信息的详解
Jun 08 PHP
PHP strip_tags()去除HTML、XML以及PHP的标签介绍
Feb 18 PHP
PHP中Session和Cookie是如何操作的
Oct 10 PHP
PHP实现对二维数组某个键排序的方法
Sep 14 PHP
php封装db类连接sqlite3数据库的方法实例
Dec 19 PHP
php学习笔记之mb_strstr的基本使用
Feb 03 PHP
PHP实现搜索时记住状态的方法示例
May 11 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
Mar 30 PHP
PHP 出现 http500 错误的解决方法
Mar 09 PHP
JS操作XML中DTD介绍及使用方法分析
Jul 04 #PHP
PHP操作XML中XPath的应用示例
Jul 04 #PHP
PHP实现财务审核通过后返现金额到客户的功能
Jul 04 #PHP
PHP使用DOM对XML解析处理操作示例
Jul 04 #PHP
PHP创建XML接口示例
Jul 04 #PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
Jul 03 #PHP
PHP实现关键字搜索后描红功能示例
Jul 03 #PHP
You might like
聊天室php&amp;mysql(四)
2006/10/09 PHP
php学习之 认清变量的作用范围
2010/01/26 PHP
php使用strtotime和date函数判断日期是否有效代码分享
2013/12/25 PHP
php实现支付宝当面付(扫码支付)功能
2018/05/30 PHP
PHP 裁剪图片
2021/03/09 PHP
直接生成打开窗口代码,不必下载
2008/05/14 Javascript
Javascript遍历Html Table示例(包括内容和属性值)
2014/07/08 Javascript
Javascript定义类(class)的三种方法详解
2015/03/13 Javascript
Jqgrid之强大的表格插件应用
2015/12/02 Javascript
js采用concat和sort将N个数组拼接起来的方法
2016/01/21 Javascript
Bootstrap每天必学之级联下拉菜单
2016/03/27 Javascript
解析JavaScript数组方法reduce
2016/12/12 Javascript
JavaScript实现的原生态兼容IE6可调可控滚动文字功能详解
2017/09/19 Javascript
Vue.js项目模板搭建图文教程
2017/09/20 Javascript
在vscode里使用.vue代码模板的方法
2018/04/28 Javascript
详解SPA中前端路由基本原理与实现方式
2018/09/12 Javascript
用node开发并发布一个cli工具的方法步骤
2019/01/03 Javascript
新手如何快速理解js异步编程
2019/06/24 Javascript
JavaScript代码异常监控实现过程详解
2020/02/17 Javascript
Vue.js 中制作自定义选择组件的代码附演示demo
2020/02/28 Javascript
修改Vue打包后的默认文件名操作
2020/08/12 Javascript
[02:46]2014DOTA2国际邀请赛 选手为你解读比赛MVP充满梦想
2014/07/09 DOTA
Python中的MongoDB基本操作:连接、查询实例
2015/02/13 Python
Python3.6实现连接mysql或mariadb的方法分析
2018/05/18 Python
TensorFlow实现从txt文件读取数据
2020/02/05 Python
解决Ubuntu18中的pycharm不能调用tensorflow-gpu的问题
2020/09/17 Python
浅谈Html5多线程开发之WebWorkers
2018/05/02 HTML / CSS
国际象棋商店:The Chess Store
2018/07/09 全球购物
公司培训欢迎词
2014/01/10 职场文书
结婚典礼证婚词
2014/01/11 职场文书
中专毕业生的自荐书
2014/07/01 职场文书
纪律教育学习心得体会
2014/09/02 职场文书
社区党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
抄袭同学作业检讨书1000字
2014/11/20 职场文书
2014年度工作总结报告
2014/12/15 职场文书
2015年酒店销售部工作总结
2015/07/24 职场文书