介绍
这篇文章主要介绍了php设置utc时区的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。
php设置utc时区的方法:1,通过”作用(“UTC");“方法将程序内部时区设置为utc时间;2、使用“localToUtc”方法将本地时间转为utc时间。
引用>
<强> php跨时区(utc时间)设置的方法强>
本文介绍下,在php中跨时区设置的方法,将程序内部时区设置为utc时间。(UTC也可以叫GMT)数据库中存储UTC时间等,供大家做个参考。
PHP跨时区(UTC时间)设置
1,将程序内部时区设置为UTC时间。(UTC也可以叫GMT)
PHP设置:
代码示例:
作用(“UTC");Yii设置:
配置/主要。php中添加:& # 39;时区# 39;=祝辞& # 39;UTC # 39;,如此设置后,惠普生成的时间基本都是UTC时间了。
例如:
代码示例:
//输出当前UTC时间 日期(“Y-m-d H:我:s");2,数据库中存储UTC时间。
可以用PHP控制,也可以通过设置数据库时区来实现。
2,服务端发送到前端的时间均为UTC时间格式,由JS将其转换为本地时间后进行显示。
JS内部数据与显示数据分离。
JS转换函数:
代码示例:
/* * *将UTC时间转为本地时间 * @param字符串utcTime utc时间字符串格式:& # 39;Y-m-d H:我:& # 39; * @return字符串本地时间字符串格式:& # 39;Y-m-d H:我:& # 39; */函数utcToLocal (utcTime) { 如果(utcTime===& # 39; 0000-00-00就是# 39;| | utcTime===null | | utcTime===& # 39; & # 39;| | utcTime===未定义) 返回utcTime; var locTime=new日期();//本地时间对象 utcTime=utcTime.replace(“产生绯闻,“/?.replace(“产生绯闻,“/?;//火狐不兼容& # 39;& # 39;分隔日期//解析字符串及本地时间赋值 locTime.setTime (Date.parse (utcTime) -locTime.getTimezoneOffset () * 60000);//本地时间字符串格式化 var年=locTime.getFullYear (); var月=preZero (locTime.getMonth () + 1); var=preZero日期(locTime.getDate ()); 乏时=preZero (locTime.getHours ()); var分钟=preZero (locTime.getMinutes ()); var第二=preZero (locTime.getSeconds ()); 返回年+ & # 39;& # 39;+月+ & # 39;& # 39;+日期+ & # 39;& # 39;+小时+ & # 39;:& # 39;+分钟+ & # 39;:& # 39;+第二; }/* * *将本地时间转为UTC时间 * @param字符串locTime utc时间字符串格式:& # 39;Y-m-d H:我:& # 39; * @return字符串本地时间字符串格式:& # 39;Y-m-d H:我:& # 39; */函数localToUtc (locTime) { 如果(locTime===& # 39; 0000-00-00就是# 39;| | locTime===& # 39; 0000 - 00 - 00 - & # 39;| | locTime===null | | locTime===& # 39; & # 39;| | locTime===未定义) 返回locTime; var tmpTime=new日期(); var utcTime=new日期(); locTime=locTime.replace(“产生绯闻,“/?.replace(“产生绯闻,“/?;//火狐不兼容& # 39;& # 39;分隔日期//解析字符串 tmpTime.setTime (Date.parse (locTime)); 如果(locTime.length> 10) { var年=tmpTime.getUTCFullYear (); var月=preZero (tmpTime.getUTCMonth () + 1); var=preZero日期(tmpTime.getUTCDate ()); 乏时=preZero (tmpTime.getUTCHours ()); var分钟=preZero (tmpTime.getUTCMinutes ()); var第二=preZero (tmpTime.getUTCSeconds ()); 返回年+ & # 39;& # 39;+月+ & # 39;& # 39;+日期+ & # 39;& # 39;+小时+ & # 39;:& # 39;+分钟+ & # 39;:& # 39;+第二; 其他}{//设置日期,保留本地时间(供UTC转换用) utcTime.setFullYear (tmpTime.getFullYear ()); utcTime.setMonth (tmpTime.getMonth ()); utcTime.setMonth (tmpTime.getMonth());//?若不重复,则赋值无效 utcTime.setDate (tmpTime.getDate ()); var年=utcTime.getUTCFullYear (); var月=preZero (utcTime.getUTCMonth () + 1); var=preZero日期(utcTime.getUTCDate ()); 返回年+ & # 39;& # 39;+月+ & # 39;& # 39;+日期; } }//单个数字添加前导0 函数preZero (str) { 返回str.toString () .length<2 ?& # 39;0 & # 39;+ str: str; }感谢你能够认真阅读完这篇文章,希望小编分享php设置utc时区的方法内容对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,遇到问题就找,详细的解决方法等着你来学习!
php设置utc时区的方法