PHP错误常见处理
1。PHPStrictStandards错误
今天修改一个之前开发的php网站,重新安装了apache和PHP环境,重置了php.ini错误输出的设置成默认值了,所以在运行网站测试的项目时竟然发现多了几条错误提示,我知道在软件设计过程中,这种错误虽然不是致命,但看着也烦人,因此不能忽视这些错误。
我在软件设计过程中遇到的错误的描述大概如下:
StrictStandards:Non-staticmethodUtils::safeInputV()shouldnotbecalledstatically,assuming$thisfrominpatiblecontextinD:\\wwwroot\\PHP\\myenv\\apache\\htdocs\\kernel\\mybase.class.phponline266
StrictStandards:Non-staticmethodUtils::safeInput()shouldnotbecalledstatically,assuming$thisfrominpatiblecontextinD:\\wwwroot\\PHP\\myenv\\apache\\htdocs\\kernel\\mybase.class.phponline266
...........还有些多哟!
我看着这些软件设计错误,基本上是PHP框架出现的问题,在百度中搜索相关错误信息也发现遇到这种错误的也不少,只好打开手册,详细研究错误的解释,后来发现是程序不严格造成的,是没有按照PHP规定的模式进行软件设计而导致PHP给出警告错误。想到这点,我又测试了很早前的软件设计项目,同样也遇到这些错误!
PHP错误常见处理
为了把这个错误解决,我将php.ini错误输出重新定义为:error_reporting=E_ALL。去掉默认的E_STRICT,重启Apache程序,呵呵,问题解决了!
2。去掉php的notice提示
Notice:Useofundefinedconstanttitle-assumed&39;title&39;inF:\\www\\myweb.phponline22Notice:Useofundefinedconstantcontent-assumed&39;content&39;inF:\\www\\myweb.phponline22
我在贵阳网站建设时,测试网站经常遇到大量类似下面的提示(此时程序运行和功能是正常的):
Notice:Useofundefinedconstanttitle-assumed&39;title&39;inF:\\www\\myweb.phponline22
其实,从事软件设计的人员都知道,这些不是PHP报错,只是一个提示,因为PHP教程中,PHP是不需要声明变量就可以直接使用的,只是PHP给这些未声明变量进行提示。以提示软件设计人员注意。程序在正式投入运行后,可以关闭这些提示。
去掉php的notice提示的解决方法:
在PHP安装目录找到php.ini找开:
定位到此行:error_reporting=E_ALL
将其改为:error_reporting=E_ALL&~E_NOTICE
重新启动APAche服务,问题即解决。
ja0jbk2m php教程www.hzhike.com/