装ECShop2.7.2运行后会出现了一堆问题,主要是因为PHP版本过高引起的,不愿意降低版本,则只能一个个解决啦!这些问题包括:preg_replace、cls_image::gd_version、end(explode('.', $tmp))。

一、关于preg_replace

因为使用PHP5.5.x,ECShop安装完成之后出现了下面提示,特别是在cls_template.php文件中。下面就将需要替换的部分一一替换。

Deprecated: preg_replace(): The /e modifier is deprecated,use preg_replace_callback instead.

下面是需要替换内容:

return preg_replace("/{([^\}\{\n]*)}/e", "\$this->select('\\1');", $source);

替换为:

return preg_replace_callback("/{([^\}\{\n]*)}/", function($r) { return $this->select($r[1]); }, $source);

$out = "<?php \n" . '$k = ' . preg_replace_callback("/(\'\\$[^,]+)/e" , "stripslashes(trim('\\1','\''));", var_export($t, true)) . ";\n";

替换为:

$out = "<?php \n" . '$k = ' . preg_replace_callback("/(\'\\$[^,]+)/" , function($ro) { return stripslashes(trim($ro[1],'\''));}, var_export($t, true)) . ";\n";

$val = preg_replace("/\[([^\[\]]*)\]/eis", "'.'.str_replace('$','\$','\\1')", $val);

替换为:

$val = preg_replace_callback("/\[([^\[\]]*)\]/is", function($ro) {return '.'.str_replace('$','\$',$ro[1]);}, $val);

$source      = preg_replace($pattern, $replacement, $source);

替换为:

$pattern = '/<!--\s#BeginLibraryItem\s\"\/(.*?)\"\s-->.*?<!--\s#EndLibraryItem\s-->/s';
$source = preg_replace_callback($pattern, function($ro){return '{include file='.strtolower($ro[1]). '}';}, $source);

还有:

$tag_sel = array_shift(explode(' ', $tag));

替换为:

$tag_arr = explode(' ', $tag);
$tag_sel = array_shift($tag_arr);

二、关于cls_image::gd_version  在lib_base.php文件中

将静态调用改为实例调用。

return cls_image::gd_version();

替换为:

$p = new cls_image();return $p->gd_version();

三、关于end(explode('.', $tmp)); 在lib_main.php文件中

将连接运算拆分即可。

$ext = end(explode('.', $tmp));

替换为:

$arr = explode('.', $tmp);$ext = end($arr);

李炎恢ecshop2.7.2安装教程与PHP5.5x不兼容的处理方法相关推荐

  1. windows安装包删了会有影响吗_已安装更新可以删除吗?win10删除更新安装教程

    已安装更新可以删除吗?众所周知,Win10会为用户自行下载安装驱动更新,有时候却导致系统故障.面对这样的问题我们怎么解决呢?下面,我们就针对问题来看看详细的win10删除更新安装教程. win7删除系 ...

  2. 李炎恢 js教程 拖拽上 思路解析

    李炎恢再讲js教程 拖拽上 讲到一个登录框,通过鼠标移动登录框到浏览器各个地方,我们现在对李炎恢的怎么想出进行分析: 问题期望是什么? 1.我们通过鼠标点击登录框,然后登录框被移动,松开鼠标,停止移动 ...

  3. 李炎恢老师XHTML视频教程DIV+CSS教程与课件代码

    [No32]李炎恢老师XHTML视频教程DIV+CSS教程与课件代码 课程目录: css专题 0.视频项目源代码+素材 第1章 XHTML学前准备(1课时) 第2章 HTML基本结构(2课时) 第3章 ...

  4. 李炎恢教程/妙味课堂javaScript/jQuery/js/Ajax全套视频

    使用JavaScript编写一个Base.js基础库,然后通过这个基础库+自行开发的插件,最终完成一个精简型博客主题的前端功能. 这是一个问答系统精简版,高仿了一些知乎网站的部分功能.通过这个小型项目 ...

  5. java 李炎恢_李炎恢 jquery 66讲视频教程PDF文件完整版全集

    [实例简介] 李炎恢老师在线教程66讲所用的PDF笔记课件,共16章.使用本文档可以省去记笔记的过程. 分享给大家,希望对大家有用. [实例截图] [核心代码] faae1ed4-23fe-4919- ...

  6. php第一季视频教程 李,PHP第一季视频教程(李炎恢+php100 不断更新)

    PHP是一种目前最流行的服务端Web程序开发语言之一.PHP主要的特点是语法简单易于学习.功能强大.灵活易用.在融合了现代编程语言的一些最佳特性后,PHP.Apache和MySQL的组合已成为Web服 ...

  7. 【网站汇总】安装教程系列

    目录 1.Anaconda 2.Pytorch 3.Tensorflow 4.LaTeX 5.博客搭建 1.Anaconda [CV]Anaconda 安装教程_Fannnnf的博客-CSDN博客 2 ...

  8. oracle 11g完全安装教程(CentOS)

    oracle下载链接:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html oracle ...

  9. vs安装一直在提取文件_Visual Studio 2019下载及安装教程

    宸1分钟前 这可是我珍藏多年的资源啊. Visual Studio 2019 Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品.是目前最流行的Windows ...

最新文章

  1. java数据写入文件方案,Java如何将字符串数据写入文件?
  2. 原码、反码、补码、移码的表示
  3. scanperiod 不生效
  4. 前端学习(1487):axios介绍
  5. sklearn——决策树
  6. Spring Boot————简介与Spring时代的承接
  7. 【codevs1170】 双栈排序
  8. CA的建立与证书的颁发
  9. oracle 关键字_oracle常见报错之无法验证 (约束) - 未找到父项关键字解决办法
  10. 折腾一台准系统及i5 6600t简单测评
  11. 亲测有效!12306火车票买下铺方法(2016.12.30)
  12. 强化学习之AC、A2C和A3C
  13. 写个单机版斗地主程序,复习c++面向对象
  14. 苹果服务器系统状态查询网站,mac电脑服务器地址怎么查看
  15. 笔记本电脑秒便WIFI热点
  16. OSM学习之路(一):OSM介绍
  17. Linux查看MegaSAS raid卡缓存策略
  18. RocketMQ原理剖析
  19. 英语论文写作词汇积累20161101
  20. 用传统流程图表示求解以下问题的算法有两个瓶子A和B

热门文章

  1. win7计算机启动修复,win7启动修复功能无法正常进入系统的解决方法
  2. 流行的框架Nohttp到来,让我们见证封装好的Nohttp详细使用步骤吧
  3. C++使用redis实例
  4. python opencv入门 Meanshift 和 Camshift 算法(40)
  5. 【读书笔记】代码思考
  6. 柯桥日语培训:语法 | 「あまり 」知识解析
  7. excel函数应用:如何写出IF函数多级嵌套公式
  8. 打印快递单不显示收货人省市区,提供两种解决方案
  9. Vue-cli使用prerender-spa-plugin插件预渲染的问题
  10. linux安装光盘下载,教你如何下载Fedora 7安装光盘