让 emlog 5.3.1 兼容 PHP7 环境一些处理方法分享

直接在 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(); 


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


海安人才网

我还是用的老环境,懒得去改了