php mysql日期操作函数
发布:smiling 来源: PHP粉丝网 添加日期:2014-09-11 09:22:04 浏览: 评论:0
文章利用了二个实例来分析介绍了关于php 日期和mysql日期的用法及格式还有包括了mysql使用日期时所用的字段类型及查询效率测试.
php,int值:
time():是返回自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数.
我们想要获得1970 年 1 月 1 日到 2012-2-10的秒数可以通过strtotime()来实现:即:strtotime('2012-2-10');
date值:string date ( string format [, int timestamp] )
比如:直接date()返回的的实现当前的时间,当然我们可以指定的他的格式.例如date('Y-m-d',strtotime('2012-2-10'));
时间操作,代码如下:
- date('Y-m-d h:i:s',strtotime('+1 week'));
- date('Y-m-d h:i:s',strtotime('+5 hours'));
- date('Y-m-d h:i:s',strtotime('next Monday));
- date('Y-m-d h:i:s',strtotime('last Sunday'));
- //开源代码phpfensi.com
- date('Y-m-d h:i:s',strtotime('+ 1 day',12313223));!!详见 int strtotime ( string time [, int now] )
date的参数,每一个参数的格式分别表示:
a - "am" 或是 "pm"
a - "am" 或是 "pm"
d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"
d - 星期几,三个英文字母; 如: "fri"
f - 月份,英文全名; 如: "january"
h - 12 小时制的小时; 如: "01" 至 "12"
h - 24 小时制的小时; 如: "00" 至 "23"
g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12"
g - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23"
i - 分钟; 如: "00" 至 "59"
j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31"
l - 星期几,英文全名; 如: "friday"
m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12"
n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12"
m - 月份,三个英文字母; 如: "jan"
s - 秒; 如: "00" 至 "59"
s - 字尾加英文序数,二个英文字母; 如: "th","nd"
t - 指定月份的天数; 如: "28" 至 "31"
u - 总秒数
w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六)
y - 年,四位数字; 如: "1999"
y - 年,二位数字; 如: "99"
z - 一年中的第几天; 如: "0" 至 "365"
其它不在上列的字符则直接列出该字符.
(2)mysql,代码如下:
int->datetime
select from_unixtime(int_time) from table;
datetime->int;
select unix_timestamp(date_time) from table;
时间操作,代码如下:
select dayofweek('2012-2-2');返回一个星期的第几天
select dayofmonth('2012-2-2');返回一月中的第几天
select dayofyear('2012-2-2');返回一年中的第几天
类似函数:month() day() hour() week()......
+几天 date_add(date,interval 2 days);
-几天 date_sub(date,interval 2 days);
时间格式:date_format(date,format)
select DATE_FORMAT('1997-10-04 22:23:00','%W %M %Y');
其他函数:TIME_TO_SEC() SEC_TO_TIME()...
最后我们总结一下关于在使用时间时在数据库是是用int,varchar ,datetime这几种的查询效率比较吧.
测试四个表的更新,分别update 100条记录,并记录时间:北京PHP资源分享门户d*V.~x G/QO
表一:页面运行时间: 2.62180089951 秒(非定长,int时间)北京PHP资源分享门户
表二:页面运行时间: 2.5475358963 秒(定长,int时间)
表三:页面运行时间: 2.45077300072 秒(varchar,datetime时间)
表四:页面运行时间: 2.82798409462 秒(char,datetime时间)
大数据量下,如果存在大量的select * from table where 时间>XX这样的查询,在MySQL5.1时使用int换datetime是有意义的.
Tags: php mysql日期操作函数
- 上一篇:收集了几款常用php日期操作
- 下一篇:PHP本地与服务器获取时间方法
相关文章
- ·php 取出周一和周日的时间戳(2013-11-12)
- ·php日期格式详细说明(2013-11-12)
- ·PHP date 格式化一个本地时间/日期(2013-11-13)
- ·php中计算时间差的几种方法(2013-11-13)
- ·探讨PHP时间戳与日期之间的转换及应用(2013-11-14)
- ·php 时区设置相差8小时间程序与php.ini配置方法(2013-11-23)
- ·在php中有没有日期相减的函数(2013-11-27)
- ·PHP中计算时间差的几种方法(2013-11-27)
- ·关于时间戳问题(2013-11-28)
- ·php获取服务器时间(解决8小时差距问题)(2013-11-28)
- ·php日期格式合法性正则验证代码(2013-11-28)
- ·PHP系统时区8小时差设置方法(2013-11-29)
- ·php中两日期比较程序代码(2013-11-30)
- ·php 日期加减法运算实现代码(2013-12-27)
- ·PHP常用的日期和时间总结(2014-01-05)
- ·PHP时间戳和日期相互转换(2014-01-06)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)