西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > php教程 > ecshop教程 >

解决ecshop在php5.5环境上报错方法

时间:2015-01-13 15:22来源:未知 作者:好模板 点击:
服务器环境php大家用的版本不断提高,Ecshop没有来得及修改那么及时。兼容性有问题,有点淘汰了。 在php5.5上安装Ecshop出现报错: Only variables should be passed by reference php 5.3以上版本的问

服务器环境php大家用的版本不断提高,Ecshop没有来得及修改那么及时。兼容性有问题,有点淘汰了。

在php5.5上安装Ecshop出现报错:
 

Only variables should be passed by reference

php 5.3以上版本的问题,应该也和配置有关 只要418行把这一句拆成两句就没有问题了

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

改成:

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

 因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值
 

修改

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

找到  cls_template.php

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

其他页面如果遇此报错,以此类推修改。以上教程仅提供参考.

(责任编辑:好模板)
顶一下
(2)
20%
踩一下
(8)
80%
------分隔线----------------------------