ecshop是国内比较流行的搭建网上商城的开源php软件,但其更新较慢,只能在PHP5.2/5.3正常运行。而现在php版本已经更新到7.0了,使用php5.2/5.3的人越来越少,更多的人转向使用更高的php版本。可以通过修改部分ecshop代码让其支持PHP5.5及以上版本。
1、Deprecated: Assigning the return value of new by reference is deprecated in F:\xampp\htdocs\ecsphp5\includes\lib.debug.php on line 303
$pa=&newPrint_a_class;
//修改为:
$pa=newPrint_a_class;
PHP5.3+废除了”=&”符号,对象复制用”=”即可,详细如下:
PHP5对象复制是采用引用的方式。
如果不采用引用方式,则需要在复制对象时加关键字 clone。
如果在复制的过程中,同时要变更某些属性,则增加函数_clone()。
2、Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead *
出现这个错误的原因是 preg_replace() 函数修饰符 /e 在 PHP5.5.x 中已经被弃用了,若出现这个错误可以用 preg_replace_callback 进行代替。(一般的可以直接去掉 e 函数,但以下需要用preg_replace_callback代替)
2.1 \includes\cls