关于php程序报date()警告的处理(date_default_timezone_set)

在写php程序中有时会出现这样的警告:

PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for '8.0/no DST' instead in D:\PHPWEB ews\file.php on line 17 。

这是因为PHP所取的时间是格林威治标准时间,所以和你当地的时间会有出入格林威治标准时间和北京时间大概差8个小时左右,我们可以按照下面的方法解决:

1、在页头使用date_default_timezone_set()设置我的默认时区为北京时间,即 <?php date_default_timezone_set("PRC"); ?>就可以了。

2、在php.ini中设置date.timezone的值为PRC,设置好以后的为:date.timezone=PRC或者date.timezone = Asia/Shanghai,同时取消这一行代码的注释,即去掉前面的分号就可以了。

然后重启apache即可!

(0)

相关推荐

  • php中用date函数获取当前时间有误的解决办法

    初学PHP做网站,想在页面上获得当前时间,学过编程的人都知道用时间函数date(),先用这个函数格式化一个本地时间/日期,先写个测试代码吧,结果输出时间比实际时间少了8小时,这是什么原因呢: 复制代码 代码如下: <?php     echo date('Y-m-d H:i:s'); ?〉 输出当前时间:2008-10-12 02:32:17 怪了,实际时间是:2008-10-12 10:32:17 难道是PHP的date()时间不正确 少8个小时? 再看看PHP手册的"例子 1. dat

  • php Smarty date_format [格式化时间日期]

    Example 5-8. date_format[日期格式] index.php: 复制代码 代码如下: $smarty = new Smarty; $smarty->assign('yesterday', strtotime('-1 day')); $smarty->display('index.tpl'); index.tpl: {$smarty.now|date_format} {$smarty.now|date_format:"%A, %B %e, %Y"} {$s

  • php中时间函数date及常用的时间计算

    曾在项目中需要使用到今天,昨天,本周,本月,本季度,今年,上周上月,上季度等等时间戳,趁最近时间比较充足,因此计划对php的相关时间知识点进行总结学习 1,阅读php手册date函数 常用时间函数: checkdate()验证一个时间是否正确 date_default_timezone_get()取得当前脚本所使用的时区 date_default_timezone_set()设定脚本所用时区  ini_set()也可以满足,或者修改配置文件 date_sunrise()  date_sunset

  • JS版的date函数(和PHP的date函数一样)

    复制代码 代码如下: // 和PHP一样的时间戳格式化函数// @param  {string} format    格式// @param  {int}    timestamp 要格式化的时间 默认为当前时间// @return {string}           格式化的时间字符串function date ( format, timestamp ) {    var a, jsdate=((timestamp) ? new Date(timestamp*1000) : new Date

  • php使用strtotime和date函数判断日期是否有效代码分享

    咋一想,判断日期是否有效应该是蛮简单的一个功能,但是细想起来还是有点麻烦的,因为既要检验格式,又要检验有效性.例如2013-02-29,虽然格式正确,但是日期无效:而2012-02-29格式正确,也有效. 一种方法可以使用正则,但是正则其实理解起来蛮麻烦的,而且使用正则在检验有效性方面也不太好.这里提供一个方法,主要是使用strtotime和date函数进行检验.直接上函数: 复制代码 代码如下: /** * 校验日期格式是否正确 *  * @param string $date 日期 * @p

  • PHP下获取上个月、下个月、本月的日期(strtotime,date)

    今天写程序的时候,突然发现了很早以前写的获取月份天数的函数,经典的switch版,但是获得上月天数的时候,我只是把月份-1了,估计当时太困了吧,再看到有种毛骨悚然的感觉,本来是想再处理一下的,但是一想肯定还有什么超方便的方法,于是找到了下面这个版本,做了一点小修改. 获取本月日期: 复制代码 代码如下: function getMonth($date){     $firstday = date("Y-m-01",strtotime($date));     $lastday = da

  • PHP date()函数警告: It is not safe to rely on the system解决方法

    近来总是有系统邮件提示,开始没在意,后来不断提示就看了一下.提示以下信息 复制代码 代码如下: PHP Warning:  date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of t

  • PHP date函数常用时间处理方法

    复制代码 代码如下: echo "今天:".date("Y-m-d")."<br>";     echo "昨天:".date("Y-m-d",strtotime("-1 day")), "<br>";     echo "明天:".date("Y-m-d",strtotime("+1 day&

  • PHP date函数参数详解

    time()在PHP中是得到一个数字,这个数字表示从1970-01-01到现在共走了多少秒,很奇怪吧 不过这样方便计算, 要找出前一天的时间就是 time()-60*60*24; 要找出前一年的时间就是 time()*60*60*24*365 那么如何把这个数字换成日期格式呢,就要用到date函数了 $t=time();  echo date("Y-m-d H:i:s",$t); 第一个参数的格式分别表示: a - "am" 或是 "pm"  A

  • 关于php程序报date()警告的处理(date_default_timezone_set)

    在写php程序中有时会出现这样的警告: PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are stil

  • 微信小程序报错:this.setData is not a function的解决办法

    微信小程序 报错:this.setData is not a function 在page中定义的代码如下,代码会报错:this.setData is not a function <strong> pasteEncryptedText:function()</strong>{ let decryptedPass = this.data.decryptedPassword; if (decryptedPass == '' ){ wx.showToast({ title: '请先输入

  • 微信小程序报错: thirdScriptError的错误问题

    微信小程序报错 VM1305:1 thirdScriptError Cannot read property 'name' of undefined TypeError: Cannot read property 'name' of undefined     at z (http://127.0.0.1:38175/appservice/__dev__/WAService.js:2:1560728)     at Ie (http://127.0.0.1:38175/appservice/__

  • Python 程序报错崩溃后如何倒回到崩溃的位置(推荐)

    假设我们有一段程序,从 Redis 中读取数据,解析以后提取出里面的 name 字段: import json import redis client = redis.Redis() def read(): while True: data = client.lpop('info') if data: yield json.loads(data) else: break def parse(): for data in self.read(): print(data['name']) if __

  • 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序报错的解决办法

    错误描述: 在开发.net项目中,通过microsoft.ACE.oledb读取excel文件信息时,报错: "未在本地计算机上注册"microsoft.ACE.oledb.12.0"提供程序" 代码示例: static void Main(string[] args) { readexcel("D:\\test\\xlsxtest.xlsx"); } public static void readexcel(string _path) { Da

  • linux系统报xfs_vm_releasepage警告问题的处理方法

    问题说明 最近的几台机器在同一天的不同时段都出现以下警告信息: Mar 26 20:55:03 host1 kernel: WARNING: at fs/xfs/xfs_aops.c:1045 xfs_vm_releasepage+0xcb/0x100 [xfs]() Mar 26 20:55:03 host1 kernel: Modules linked in: nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack iptable

  • 微信小程序new Date()方法失效问题解决

    iOS系统对js中的new Date()方法有格式要求 let dt = new Date("2019-07-24 19:57") // dt会返回valid Date 正确写法应该是 let dt = new Date("2019/07/24 19:57") 而实际应该过程中日期格式大部分都是2019-07-24这种,所以在实际应用过程中需要用正则对字符串进行预处理 let tm = "2019-07-24 19:57" let dt = ne

  • 微信小程序new Date()方法失效问题解决方法

    iOS系统对js中的new Date()方法有格式要求 let dt = new Date("2019-07-24 19:57") // dt会返回valid Date 正确写法应该是 let dt = new Date("2019/07/24 19:57") 而实际应该过程中日期格式大部分都是2019-07-24这种,所以在实际应用过程中需要用正则对字符串进行预处理 let tm = "2019-07-24 19:57" let dt = ne

  • 关于pyinstaller生成.exe程序报错:缺少.ini文件的分析

    目录 生成的.exe文件执行报错 测试办法 命令行窗口显示报错信息如下 新的报错如下 上述报错信息解释如下 附上pyinstaller的常见参数 使用指令:pyinstaller -F -w main.py 生成的.exe文件执行报错 看报错信息,初步怀疑是生成的.exe不能执行.ini配置文件. 将程序需要的.ini文件放到.exe同级目录下,虽然还是执行不成功,但是没有上述报错了:删除同级目录下面的.ini文件,上述报错仍然存在,说明初步的判定成立,.exe执行不成功与.ini配置文件有关系

  • Android程序报错程序包org.apache.http不存在问题的解决方法

    Android Studio 2.1中使用 Android SDK 6.0(API 23),加载融云Demo时,报错: 解决办法: Android 6.0(api 23)已经不支持HttpClient了,在build.gradle中 加入 useLibrary 'org.apache.http.legacy'就可以了,如图: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们.

随机推荐