近期把PHP升级到了最新稳定版本7.2.8。访问博客首页提示了两个Deprecated错误, 关于函数create_function()和__autoload(),错误信息以及对应的代码如下

错误一:

// Deprecated: Function create_function() is deprecated in /var/www/html/niliu/wp-includes/pomo/translations.php on line 208

/**

* Makes a function, which will return the right translation index, according to the

* plural forms header

* @param int $nplurals

* @param string $expression

*/

function make_plural_form_function($nplurals, $expression) {

$expression = str_replace('n', '$n', $expression);

$func_body = "

\$index = (int)($expression);

return (\$index < $nplurals)? \$index : $nplurals - 1;";

return create_function('$n', $func_body);

}

错误二:

// Deprecated: __autoload() is deprecated, use spl_autoload_register() instead in /var/www/html/niliu/wp-includes/compat.php on line 502

// SPL can be disabled on PHP 5.2

if ( ! function_exists( 'spl_autoload_register' ) ):

$_wp_spl_autoloaders = array();

/**

* Autoloader compatibility callback.

*

* @since 4.6.0

*

* @param string $classname Class to attempt autoloading.

*/

function __autoload( $classname ) {

global $_wp_spl_autoloaders;

foreach ( $_wp_spl_autoloaders as $autoloader ) {

if ( ! is_callable( $autoloader ) ) {

// Avoid the extra warning if the autoloader isn't callable.

continue;

}

call_user_func( $autoloader, $classname );

// If it has been autoloaded, stop processing.

if ( class_exists( $classname, false ) ) {

return;

}

}

}

endif;

create_function()这个问题可以换一个写法,但是__autoload是WordPress对于PHP5.2版本的一个兼容,除非移除这个方法,这样就破坏了原有的代码的完整性,于是想着先隐藏这个提示:

error_reporting(E_ALL & ~E_STRICT & ~E_NOTICE & ~E_DEPRECATED);

ini_set('display_errors', 'Off');

入口文件加上了上面这行代码,发现首页还是提示错误。(原因没有查到)

想到的临时解决办法如下:

在create_function前面加@, 把上面第一个代码片段第13行改为:

return @create_function('$n', $func_body);

回头用匿名函数实现了,替换掉,搜索发现用create_function有一个安全漏洞,点击查看。

把__autoload改为__autoload2,把上面第二个代码片段第14行改为:

function __autoload2( $classname ) {

如果大家也遇到这个问题,可以参考这种临时解决办法,如有更好的建议,欢迎留言讨论。

php 屏蔽deprecated,php7.2.8 Deprecated错误不能隐藏处理相关推荐

  1. jAvA中deprecate,在Java中使用Deprecated方法或类是错误的吗?

    1.在Java中使用Deprecated方法或类是错误的吗? 从已弃用的定义 : 注释@Deprecated的程序元素是程序员不鼓励使用的程序元素,通常是因为它是危险的,或者是因为存在更好的selec ...

  2. Deprecated: Function ereg_replace() is deprecated

    Deprecated: Function ereg_replace() is deprecated in /usr/local/apache/htdocs/cacti/include/global.p ...

  3. Deprecated:function eregi() is deprecated in /usr/local/apache/libraries/lib_lang.php on line 8

    Deprecated:function eregi() is deprecated in /usr/local/apache/libraries/lib_lang.php on line 8 Depr ...

  4. 出现Deprecated: Function ereg_replace() is deprecated in 的原因及解决方法

    出现Deprecated: Function ereg_replace() is deprecated in 的原因及解决方法 参考文章: (1)出现Deprecated: Function ereg ...

  5. java 废弃方法_在Java中使用Deprecated方法或类是错误的吗?

    Cats萌萌 术语来自官方的Sun词汇表:deprecation:指不再推荐的类,接口,构造函数,方法或字段,可能在将来的版本中不再存在.从何时何时弃用指南:您可能已经听过"自我贬低的幽默& ...

  6. 解决Windows上编译PHP7.1拓展的错误

    转载请注明文章出处:https://tlanyan.me/solve-buil... 接上篇Windows编译PHP7.2拓展,以为编译PHP7.1的拓展应该水到渠成,马到成功.哪知道编译PHP7.1 ...

  7. php7.1 rc,解决Windows上编译PHP7.1拓展的错误

    接上篇Windows编译PHP7.2拓展,以为编译PHP7.1的拓展应该水到渠成,马到成功.哪知道编译PHP7.1拓展出现了新问题,折腾更超7.2. 第一个问题是VC15(visual studio ...

  8. php7 打开错误提示,PHP7如何开启具体错误显示

    目录 在使用nginx的过程中总是会碰到nginx提示500错误,可是具体错误需要去查看错误日志文件, 很是不方便.打开错误页面提示很实用于调试PHP的时候,但不建议在线服务器开启此功能. 修改fpm ...

  9. php7.1.6验证码错误,steam输入验证码不正确怎么办

    steam输入验证码不正确怎么办? steam手机令牌验证码输入正确,但一直显示令牌的验证码是错误需要把令牌进行转移,转移方法为: 1.首先打开之前旧的手机的steam令牌软件,然后点开左侧菜单,在里 ...

  10. 宝塔面板wordpress“知更鸟”主题升级到php7.3,出现“警告错误提示”的解决办法

    最近,将网站运行的硬件进行了升级,从虚拟主机换成了vps,同时,用上最新的宝塔面板(基于centos7的6.9版本),php主要是用7.3版本,网上资料说,wordpress完美支持php7.0及以上 ...

最新文章

  1. 2021 线性代数 第三章 习题课
  2. if not exist Oracle,oracle 兑现 if not exist 方法
  3. Java web对试卷进行单选多选答题进行打分_java + vue 考试系统,适配各种题型,包含微信小程序端...
  4. ubuntu+终端不能启动mysql数据库_强制重启Ubuntu服务器后Mysql无法启动
  5. 20180316 数组所占空间
  6. Android:IntentService的学习
  7. 物联网碰到云计算会怎么样?
  8. 为Android安装BusyBox
  9. 【BZOJ1012】最大数maxnumber,疯狂CE的线段树练习
  10. 猫影视接口相关及短网址
  11. Linux系统安全防护加固
  12. 从零基础入门Tensorflow2.0 ----六、28 深度可分离卷积神经网络
  13. mysqludf_json将关系数据以JSON编码
  14. gdc服务器维修员登录密码,gdc服务器密码
  15. HttpSession详解(简称session)
  16. Electron屏幕截图的技术方案MacWindows
  17. 方块 游戏界面java_JAva 判断方块游戏清除方法
  18. 一篇评价牛顿的搞笑文章,作者老罗,但很有才
  19. 万物互联!盘点国内八大物联网平台
  20. 华为云存储空间图库占比太大_用户数据安全存储 华为云空间这些功能大显身手...

热门文章

  1. 1月24日源码中国VB源码下载排名
  2. 三年经验的程序员,为什么能力要强过80%的人
  3. 带宽与码元的关系_带宽和传输速率的关系是什么?
  4. cncert阅读报告
  5. android wear自动断开,如果你的手表总是自动断开与手机连接的话,可以看下。
  6. (转)优秀防火墙推荐列表
  7. B站UP主稚晖君自制机械臂给葡萄做缝合手术,工业制造趋于智能化
  8. Unity:通过脚本控制Shader中的Cutoff
  9. 在网上买衣服如何测量自己衣服尺码?
  10. HTML5中网页布局及display属性重点总结