php更新到7.2后遇到的问题

前两天发现服务器有漏洞,需要升级服务器,服务器使用的是wamp的集成环境,直接把wamp升级到3.1.9的了,php+mysql+apache都升级了。

php是升级到7.2.18了,结果一打开系统,问题就来了,后来网上一查,php到7.2版本后做了以下改动:

1.each()函数被废弃。解决方法,自己写一个相同功能的函数:

function func_new_each($array){
       $res = array();
       $key = key($array);
       if($key !== null){
           next($array); 
           $res[1] = $res['value'] = $array[$key];
           $res[0] = $res['key'] = $key;
       }else{
           $res = false;
       }
       return $res;
}

2.count()函数更加严格,参数必须为数组或对象,否则会报错。解决方法:

if(empty($arr)){
    $arr = array();
}
count($arr);

--------------或者------------

if(is_array($arr)){  
  count($arr);  
}

3.create_function()函数被废弃,解决方法,可使用匿名函数代替:

$newfunc = function ($a,$b){
      return "ln($a) + ln($b) = " . log($a * $b);
};

以上是我遇到的问题以及解决方法,php7.2其他的改动暂未发现。

发布了77 篇原创文章 · 获赞 16 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/qq_41756580/article/details/90693086
今日推荐