让Emlog5.3.1兼容PHP7环境一些处理方法分享

2019-1-15 / 2 评论 / 15123 阅读

直接在php7安装emlog5.3.1各种报错。emlog5.3.1虽然已经出了使用mysqli连接类,但是为了兼容性还是默认是使用了mysql。因为PHP7已经不支持mysql扩展了,但是支持mysqli和pdo_mysql。所以这里还是介绍如何使用mysqli来安装emlog



以下是修改emlog安装程序,无报错安装。如果是实际环境请在本地环境模拟后成功后再更换。



1、修改include\lib\option.php

const DEFAULT_MYSQLCONN = 'mysql';
改为
const DEFAULT_MYSQLCONN = 'mysqli';//默认链接方式改为mysqli



2、在/include/lib/cache.php

$$row['option_name'] = $row['option_value'];
改为
${$row['option_name']} = $row['option_value'];



3、在admim/seo.php

$$t
改为
${$t}



4、在admim/views/admin_log.php

$$a
$$b
$$a
改为
${$a}
${$b}
${$a}



5、在admim/views/comment.php

$$a = "class=\"filter\"";
改为
${$a} = "class=\"filter\"";



另外有些插件和主题是固定了使用mysql连接类,这样还需要修改插件和主题中的数据库连接方式,不然直接报数据库错误。

比如:$DB = MySql::getInstance();

都要改为$DB = Database::getInstance();



此教程参考网上很多资料,舍力未做测试,仅供学习参考之用!!!

评论一下?

OωO
取消
    1. 头像
      Mocha
      沙发
      你好,站长,这篇文章教程中的修改相关代码,我翻查了网站根目录,找到了文件,进入修改的时候,发现并没有文章所述的代码,操作应该是没有问题的,或者,这个教程的可用性待考证...
      回复
      1. 头像
        舍力
        @Mocha:我这边一切正常,请检查你下载的是否是5.3.1的原版程序
        回复