PHP时间大的来分有两种,一是时间戳类型(1228348800),二是正常日期格式(2008-12-4)
所以存到数据库也有两种形式了(真正不止,我的应用就两种),时间戳类型我是保存为字符串的,这个是比较方便的.
正常日期类型是保存为DATE型的.
这两个要注意一下,我平时用两种,所以,前几天建的表,把时间类型存为DATE的,我还一直用时间戳保存,一直资料写不进表,调试了好久的才知错误之处,是类型不符合,不给写入库.
像上面的时间戳是比较方便,但,显示的时候,不至于把这个1228348800串给客户看吧,GOD NOWS!
所 以就用到了这两个的转换,先说一下如何取得当前的时间戳,$date1=time();这样就取得当前的时间戳了,要转回2008-12-4这种格式呢, 用到date()这个函数了,在PHP中date()函数比较常用,如取得当前日期,可以用$date2=date('Y-m-d');,关于里面参数的 意思,如不懂就查一下php的手册了.
好,言归正传,把1228348800转成2008-12-4格式代码如下:
$date3=date('Y-m-d H:i:s',"1228348800");
这样就OK了,如还想得到小时,分钟秒,只要把'Y-m-d'改一下就可以了,不过要注意一下,PHP时间还像有8个小时的误差.加上就OK了.
时间戳转正常日期有了,反之呢,把正常日期格式转为时间戳呢,请看如下代码:
$year=((int)substr("2008-12-04",0,4));//取得年份
$month=((int)substr("2008-12-04",5,2));//取得月份
$day=((int)substr("2008-12-04",8,2));//取得几号
echo mktime(0,0,0,$month,$day,$year);
这样就能把正常日期转成时间戳了,这里如果有时分秒也是同理,
注意: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
这样就可以实现输出的是北京时间了

转载于:https://blog.51cto.com/ylj798/1063376

php时间戳与日期互转相关推荐

  1. datetime unix php,PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】...

    本文实例讲述了PHP基于DateTime类解决Unix时间戳与日期互转问题.分享给大家供大家参考,具体如下: 这个问题主要在32位的系统下出现,64位的不存在这样的问题.php 5.2+提供了Date ...

  2. PHP时间戳和日期互转换

    在php中我们要把时间戳转换日期可以直接使用date函数来实现,如果要把日期转换成时间戳可以使用strtotime()函数实现,下面我来给大家举例说明. 1.php中时间转换函数 strtotime ...

  3. php循环语句时间戳转换,php 时间戳与日期的转换(转载)

    UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式. a:Unix时间戳存储.处理方便,但是不直观 b:格式化日期直观,但是处理起来不如Unix时间戳那么自如 [关于两者的互相转换] 日  期 ...

  4. java时间戳龙_Java时间戳与日期格式字符串的互转

    Java时间戳与日期格式字符串的互转 import java.text.SimpleDateFormat; import java.util.Date; public class DateUtil { ...

  5. android 获取系统时间的时间戳 ,时间戳日期互转,计算日期时间差,获取明天日期,比较时间大小

    long creatTime=mBindCheck.remainPaymentTime; int shi = (int)mBindCheck.remainPaymentTime/(3600*1000) ...

  6. mysql转unix时间戳_mysql日期与unix时间戳互转

    #### UNIX时间戳转换为日期用函数: FROM_UNIXTIME(unix_timestamp,format) ```sql select FROM_UNIXTIME(1156219870); ...

  7. php用什么服务器系统时间格式,php中时间戳和日期格式的转换

    一,PHP时间戳函数获取指定日期的unix时间戳 strtotime("2009-1-22″) 示例如下: echo strtotime("2009-1-22″) 结果:12325 ...

  8. EXCEL中将时间戳转换为日期格式

    EXCEL中将时间戳转换为日期格式 从linux系统中获取的时间戳信息通常为s,将其转换的公式为: =TEXT((E1+83600)/86400+70365+19,"yyyy-mm-dd h ...

  9. php日期时间戳相互转换,PHP时间戳和日期相互转换

    在php中我们要把时间戳转换日期可以直接使用date函数来实现,如果要把日期转换成时间戳可以使用strtotime()函数实现,下面我来给大家举例说明. 1.php中时间转换函数 strtotime ...

最新文章

  1. mysql repair 索引_mysql 创建索引、重建索引、查询索引、删除索引 转自:http://www.phpernote.com/mysql/942.html...
  2. vector 不是模板
  3. Winform中使用FastReport的DesignReport时怎样设置Table的size自动调整
  4. c# js popup_c#一个popup问题 :Button_Click_send中如何取得textbox1的内容啊
  5. #1415 : 后缀数组三·重复旋律3 (最长公共子串)
  6. Java VM –提防YoungGen空间
  7. [Cocoa]深入浅出Cocoa之Core Data(2)- 手动编写代码
  8. SharePoint 2013 Farm 安装指南——Least Privilege
  9. mysql mof提权原理_[原创]WEB安全第六章提权篇12 mof提权
  10. Xshell连接redhat乱码问题
  11. Continue(Java)
  12. 基于麻雀搜索算法优化的SVM数据分类预测 - 附代码
  13. Apache Flink Time Window 深度解析
  14. 漫画算法python篇pdf_漫画算法:小灰的算法之旅(Python篇)(全彩)
  15. MeanShift跟踪MATLAB实现
  16. EAS序时簿界面显示,不再忽略数值零
  17. ECCV 2022 | 石溪大学联合小鹏汽车提出先验知识指导的无监督领域自适应
  18. 如何在word左侧显示目录
  19. 聊聊校招内推,意义/优缺点/如何抓住机会等
  20. Git:合并分支----git merge命令应用的三种情景

热门文章

  1. oracle client server那点事
  2. 手动配置Hibernate的方法
  3. 对 makefile 中 .PRECIOUS 的学习
  4. acmug 2016 mysql年会_2017年第2次MariaDB开发者大会(深圳,中国)相关安排
  5. 5GS 协议栈 — NR 空中接口协议栈
  6. Redis Python 客户端
  7. DPDK — DPDK APP 的指令行参数
  8. 互联网协议 — Ethernet — 冲突域、广播域
  9. OpenStack 实现技术分解 (7) 通用库 — oslo_config
  10. [Python3网络爬虫开发实战] 7-动态渲染页面爬取-4-使用Selenium爬取淘宝商品