便宜vps推荐!

帝国ccms7.5在php7下需要改进的地方

时间:|浏览:| 评论 ()


1. 如何方便的在php7和其他版主中自由的切换帝国cms


//数据库设置
$ecms_config['db']['usedb']='mysql';    //数据库类型
if(PHP_VERSION>6.9)$ecms_config['db']['usedb']='mysqli';

php7 有很多地方不再兼容低版本。对于帝国cms7.5来说,受影响最深的就是编码转换了。



 
在php7的地盘,PHP4的语法风格中的一些东西将被被抛弃。例如构造函数的用法,会在新的PHP7中完全被抛弃。PHP7将会提示一个: E_DEPRECATED的错误提示。
<?php

class foo {

    //方法名类名相同的构造函数的用法不再兼容
    function foo() {
        echo 'I am the constructor';
    }
}
?>

翻遍帝国cms7.的源代码,帝国cms的编码转换文件e/class/doiconv.php,有多处不适应php7

可能受影响的模块: 

支付---    http://bbs.phome.net/ShowThread/?threadid=360357&forumid=42   


搜索 ---   http://bbs.phome.net/ShowThread?threadid=360428&forumid=42

首字母生成----  http://bbs.phome.net/ShowThread?threadid=361442&forumid=13

增加栏目生成拼音乱码 --- http://bbs.phome.net/ShowThread/?threadid=357442&forumid=42 

本着少改的原则,提出如下修改办法---

 

针对 e/class/doiconv.php 文件



2.1 查找     function Chinese($dir='./') 

修改为  

    function __construct($dir='./')
2.2 查找 
$this->config['codetable_dir'] = $dir."../data/codetable/";
修改为

$this->config['codetable_dir'] = ECMS_PATH."e/data/codetable/";
2.3 查找
/* 如果编码相同,直接返回 */
        if ($source_lang == $target_lang || $source_string == '')
        {
            return $source_string;
        }
      

在其后添加:
  //edit by jiuhecai
        return mb_convert_encoding($source_string,$target_lang,$source_lang);

2.4 查找

while(list($key,$value)=each($tmp))

替换为:
foreach($tmp as $key=>$value)

邮件发送模块,也有类似的问题

 邮件发送模块 e/class/class.smtp.php
  
问题表现:  http://bbs.phome.net/ShowThread/?threadid=357544&forumid=42  

解决方案:
 
修改e/class/class.smtp.php

3.1 查找  function SMTP() {
修改为
        function __construct() {

3.2查找    while(list(,$line) = @each($lines)) {

修改为:
            foreach($lines as $line){
 
3.3查找   while(list(,$line_out) = @each($lines_out)) {

修改为
                 foreach($lines_out as $line_out){

 
3.4 查找   while(list(,$l) = @each($entries)) {
     修改为

       foreach ($entries as $l){

声明:VPSNO仅为VPS服务器信息分享,任何IDC都有倒闭和跑路可能,本站无法作任何保障,请网友购买前自行斟酌,衡量评估风险,自负责任。数据勤备份是最佳选择。本文由VPSNO网站发布,转载请保留链接:《帝国ccms7.5在php7下需要改进的地方》站长联系QQ:22⑧2六8⑦肆8,邮箱为QQ邮箱。
网友评价
评论列表
共有 条评论

精选便宜VPS - VPS排行

  • No.1 最便宜的大厂云服务器
    UCloud云服务器

    UCloud云服务器

    UCloud(优刻得)是国内最大的中立公有云服务商,全球包含香港、台湾共25个数据中心,52元/年起

  • No.2 国内用户最多的云服务器
    阿里云服务器

    阿里云服务器

    阿里云是国内云服务器第一梯队头部商家,目前国内用户选择最多的云服务器商。

  • No.3 号称“良心云”的云服务器
    腾讯云服务器

    腾讯云服务器

    和阿里云规模相当的国内云服务器商,套路少,给100%CPU资源,拥有更好的性价比。

  • 热度飙升最快的国外VPS
    RackNerd

    RackNerd

    RackNerd是2019年成立的主机商,以提供便宜VPS、大带宽VPS闻名,近年来在国内用户中知名度颇高。

  • 最受国人欢迎的国外VPS
    bandwagonhost搬瓦工

    bandwagonhost搬瓦工

    搬瓦工VPS可能是中国用户数量最多的服务商,专为大陆用户定制了大量功能,线路有特别优化,快而稳定。

  • 实力雄厚的老牌国外VPS
    vultr

    vultr

    Vultr是成立于2014年的老牌IDC,全球16个机房,硬件配置极高,新用户注册赠送100美元余额。