wordpress解决php7.2后报错Warning: Use of undefined constant – assumed问题
今天上线了项目后出现了Warning: Use of undefined constant xxx这种警告总体来说不算是错误,可以通过修改php.ini来实现阻止显示notice和waring 但是这不是最终的解决办法,所以就查询了php7.2相关的说明。
php7.2 把所有的没有加单引号的值都看成了常量。那么我们就知道怎么去处理了。
所以只需要在报错的提示的地方把对应的值加上单引号即可解决。今天就ok了
那解决方法有两种:
一、升级主题,这个不太现实。
二、只是报了”Warning警告“,我能不能不让这些错误信息显示?
看来只需要关闭”PHP错误提示“就行了。宝塔面板中操作如下:
进入php管理,点“配置修改”,设置display_errors为关闭,然后保存,重启一下服务。

就这么简单。
如果不是在宝塔面板,那就要深入腹地,修改php.ini文件。
1、打开 php.ini
2、设置 error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
3、设置 display_errors = Off
其实两个方法,只是方式不同,改的都是同一个东西。
php从7.1升到了7.2,升级后浏览文章页面,文章页面底部却出现了以下提示信息:
Warning: Use of undefined constant Y – assumed ‘Y’ (this will throw an Error in a future version of PHP) in wp-content/themes/bdidq/functions.php on line 464
网上搜索了下,也没找到相关信息,自己也是搞软件开发的,从字面意思来看,常量Y未被定义。
应该是php 7.2更改了这个常量的书写格式。
首先在主题编辑处打开function.php文件。
其次,定位到提示的464行。
发现此处代码是date(Y) ,获取的是年份。百度了下php7.2 获取年份的格式,只需要给Y加上双引号就行。
即将 date(Y) 改为 date(“Y”) 即可解决问题。