如何使emlog支持PHP7.0+

服务器PHP从5.6升级到7.0+后,打开emlog会报错,提示服务器不支持mysql数据库。这是由于emlog久不更新,已经不支持php7.0及以上的版本了,还在用emlog的小伙伴需要修改以下5处,使emlog继续存活:
//———–第1处———–
首先在/include/lib/option.php
大约11行位置
//默认MySQL链接方,mysql或mysqli
把const DEFAULT_MYSQLCONN = ‘mysql’;
改为 const DEFAULT_MYSQLCONN = ‘mysqli’;

//———–第2处———–
在/include/lib/cache.php
大约195行
把$$row[‘option_name’] = $row[‘option_value’];
改为 ${$row[‘option_name’]} = $row[‘option_value’];

//———–第3处———–
在admim/seo.php
大约在15行、19行共两行
把 $$t
改为${$t}

//———–第4处———–
在admim/views/admin_log.php
大约在86行、88行、90行共三个
把$$a $$b $$a
改为 ${$a} ${$b} ${$a}

//———–第5处———–
在admim/views/comment.php
大约在18行
把 $$a = “class=\”filter\””;
改为 ${$a} = “class=\”filter\””;

P.s:有些插件和主题是固定了使用mysql连接类,这样还需要修改插件和主题中的数据库连接方式,不然也会报数据库错误。
比如$DB = MySql::getInstance();
都要改为$DB = Database::getInstance();

You may also like...

3 Responses

  1. leo.Ysk说道:

    以上方法修改后emlog 5.3.1后,在PHP7.1和7.2下亲测可以正常运行,清放心食用。

  2. liqwe说道:

    也可以试试修改版的

发表评论

电子邮件地址不会被公开。 必填项已用*标注