- 浏览: 71003 次
- 性别:
- 来自: 广州
最新评论
前两篇完成了 《PHP开发笔记系列(一)-PDO使用》 和《PHP开发笔记系列(二)-字符串使用》 ,今天开始研究一下PHP中的日期时间处理和MySQL中的日期时间处理,《PHP开发笔记系列(三)-日期与时间》 。
日期时间是平常用得比较多的函数,在JAVA中我们通过new Date()可以获取服务器的当前时间,通过SimpleDateFormat类,并指定formatString,可以将date对象的值格式化成指定的形式。同理,在PHP中,同样有类似的类和函数,那就是time函数和date函数。time()类似于new Date(),能够获取服务器当前时间,date函数类似于SimpleDateFormat类。
1. 使用time函数获取服务器当前时间,使用date函数进行格式化
file:time.php url:http://localhost:88/datetime/timephp <?php // 获取服务器当前时间 $time = time(); echo $time."<br/>"; // 获取当前默认是时区 echo date_default_timezone_get()."<br/>"; echo date("Y-m-d h:i:s", $time)."<br/>"; echo "<hr/>"; // 设置当前默认是时区 date_default_timezone_set("America/New_York"); echo date("Y-m-d h:i:s", $time)."<br/>"; ?>
2. 通过字符串构造日期时间
file:strtotime.php url:http://localhost:88/datetime/strtotime.php <?php // 字符串转time类型 $time1 = strtotime("2012-05-27 10:52:05"); // 使用date函数获取星期几并输出 echo 'today:'.date("l", $time1)."<br/>"; // 使用date函数获取当月总天数并输出 echo 'total day of this month:'.date("t", $time1)."<br/>"; ?>
3. 基于当前时间的日期时间计算
file:date-compute.php url:http://localhost:88/datetime/date-compute.php <?php // 计算time $nextDay = strtotime("+1 day", time()); $lastDay = strtotime("-1 day", time()); $nextMonth = strtotime("+1 month", time()); $lastMonth = strtotime("-1 month", time()); $nextYear = strtotime("+1 year", time()); $lastYear = strtotime("-1 year", time()); echo 'new day:'.date("Y-m-d h:i:s", $nextDay)."<br/>"; echo 'last day:'.date("Y-m-d h:i:s", $lastDay)."<br/>"; echo 'next month:'.date("Y-m-d h:i:s", $nextMonth)."<br/>"; echo 'last month:'.date("Y-m-d h:i:s", $lastMonth)."<br/>"; echo 'next year:'.date("Y-m-d h:i:s", $nextYear)."<br/>"; echo 'last year:'.date("Y-m-d h:i:s", $lastYear)."<br/>"; // 通过date函数获取年份 echo 'current year:'.date("Y"); ?>
4. 在SQL中处理日期时间
SELECT NOW() SELECT CURRENT_TIMESTAMP(); SELECT DATE_FORMAT(NOW(), "%Y-%m-%d"); SELECT DATE_FORMAT(NOW(), "%h:%i:%s"); SELECT DATE_FORMAT(NOW(), "%W %w %p");
5. 在SQL中进行日期计算
使用DATE_ADD函数进行未来日期的计算
SELECT DATE_ADD(NOW(), INTERVAL 1 YEAR); SELECT DATE_ADD(NOW(), INTERVAL 1 MONTH); SELECT DATE_ADD(NOW(), INTERVAL 1 DAY); SELECT DATE_ADD(NOW(), INTERVAL 1 HOUR); SELECT DATE_ADD(NOW(), INTERVAL 1 MINUTE); SELECT DATE_ADD(NOW(), INTERVAL 1 SECOND);
使用DATE_SUB函数进行过去日期的计算
SELECT DATE_SUB(NOW(), INTERVAL 1 YEAR); SELECT DATE_SUB(NOW(), INTERVAL 1 MONTH); SELECT DATE_SUB(NOW(), INTERVAL 1 DAY); SELECT DATE_SUB(NOW(), INTERVAL 1 HOUR); SELECT DATE_SUB(NOW(), INTERVAL 1 MINUTE); SELECT DATE_SUB(NOW(), INTERVAL 1 SECOND);
上述函数的执行结合也可用于SQL语句当中,如查询前三天的日志信息,SQL如下:
SELECT * FROM log WHERE create_time BETWEEN SELECT DATE_SUB(NOW(), INTERVAL 3 DAY) AND SELECT DATE_ADD(NOW(), INTERVAL 1 DAY);
本文地址:http://ryan-d.iteye.com/blog/1543363
- datetime.zip (1.6 KB)
- 下载次数: 8
发表评论
-
php curl in windows configuration
2012-09-11 11:32 0Just an additional note for Win ... -
PHP开发笔记系列(九)- 数组(四)
2012-06-24 23:13 1486经过《PHP开发笔记系列(九)- 数组(一)》 、《 ... -
PHP开发笔记系列(九)- 数组(三)
2012-06-24 16:10 1743写了两篇关于Php数组的日常使用,本篇《PHP开发笔记 ... -
PHP开发笔记系列(九)- 数组(二)
2012-06-23 23:22 1840昨晚临睡前写完了《PHP开发笔记系列(九)- 数组( ... -
PHP开发笔记系列(九)- 数组(一)
2012-06-22 22:34 1507最近在做项目的时候,经常需要用到关联数组的处理,发现P ... -
php 正则表达式
2012-06-15 12:10 0php 正则表达式 -
PHP XML处理
2012-06-15 11:47 0PHP XML处理 -
PHP开发笔记系列(十)- 电子邮件
2012-06-01 17:05 0Mail在应用程序中经常会使用到,例如注册成功后的账号 ... -
PHP开发笔记系列(八)- 上传与下载
2012-06-18 09:26 1861最近由于项目需要,在GZBGY进行了闭关,与同行的De ... -
PHP开发笔记系列(XAMPP+PhpEclipse+XDebug)
2012-05-29 21:51 1883第一篇:《PHP开发 ... -
PHP开发笔记系列(七)- 压缩与解压缩
2012-06-06 20:27 3462压缩与解压缩,在一般的web应用程序中可能用得不 ... -
PHP开发笔记系列(六)- 内置FTP函数
2012-06-04 08:57 1578FTP是我们经常用到的一种服务器,能够用来接收第三方系 ... -
PHP开发笔记系列(五)- INI文件解释
2012-06-01 15:52 1834在JAVA开发中,我 ... -
PHP开发笔记系列(四)-文件操作
2012-05-30 20:32 2170对于一般的web应用程序,数据会保存在数据库表中,但是 ... -
PHP开发笔记系列(二)-字符串使用
2012-05-29 11:29 1554经过了《PHP开发笔记系列(一)-PDO使用 ... -
PHP开发笔记系列(一)-PDO使用
2012-05-28 21:16 10572之前一段时间,开始了php的研究,看了关于PDO的一 ...
相关推荐
NULL 博文链接:https://ryan-d.iteye.com/blog/1546706
PHP动态网站开发任务-日期时间.pptx
PHP经典实例--日期和时间,是一些pdf格式文档,对于新手很有帮助的。
PHP 笔记整理--杨利强.pdf
NULL 博文链接:https://ryan-d.iteye.com/blog/1543417
NULL 博文链接:https://ryan-d.iteye.com/blog/1543225
计算机后端-PHP视频教程. php与mysql加强- 08. php加强33-日期时间列.wmv
NULL 博文链接:https://ryan-d.iteye.com/blog/1566686
个人每天的学习笔记,之后几天持续更新,以此激励自己和希望他人有所借鉴。
NULL 博文链接:https://ryan-d.iteye.com/blog/1543374
NULL 博文链接:https://ryan-d.iteye.com/blog/1543244
NULL 博文链接:https://ryan-d.iteye.com/blog/1543412
NULL 博文链接:https://ryan-d.iteye.com/blog/1543414
NULL 博文链接:https://ryan-d.iteye.com/blog/1566777
NULL 博文链接:https://ryan-d.iteye.com/blog/1566123
本文档是关于SMARTY的笔记,知识点归纳的很全,是在听了达内的老师和兄弟连的老师之后才整理出来的,相信通过该份笔记,学习smarty引擎可以不用再需要其他的笔记。 配有知识点总结 学习过程中写的案例 学习心得 一...
计算机后端-PHP视频教程. php与mysql加强- 03. php加强32-日期解析函数.wmv
本资源是我在达内学习整理的笔记,包括 php mysql javascript js jquery ,前面Php是同学整理的,后面是我整理的,附有自己实操的案例,分析,和上一篇格式差不多,因为内容很多,就不列目录了。 有下载过“smarty...
一键lamp(apache2.2+mysql5.5+php5.3)-详细笔记文档总结-带安装包