WIN+PHP5+MYSQL5+IIS环境问题!

2016-07-07 15:11 来源:www.chinab4c.com 作者:ecshop专家

WIN+PHP5+MYSQL5+IIS环境;

安装提示成功;

在运行前台时出现:
Fatal error: Only variables can be passed by reference in E:\WWW\upload\includes\lib_main.php on line 1316

在运行后台时出现:
Fatal error: Only variables can be passed by reference in E:\WWW\upload\includes\cls_template.php on line 406

解决办法:
1、将商城根目录下的 includes/lib_main.php 文件中的 1316 行的
$ext = end(explode('.', $tmp));
改为
$array = explode('.', $tmp);
$ext = end($array);
2、将商城根目录下的 includes\cls_template.php 文件,将第 406 行
$tag_sel = array_shift(explode(' ', $tag));
改为
$array = explode('.', $tag);
$tag_sel = end($array);
3、文件修改后将编译文件和缓存文件清除即可。缓存文件存放在商城根目录下的 templates/caches 目录下,编译文件存放在商城根目录下的 templates/compiled/admin 和 templates\compiled 目录下。这里需要注意一下:如果清除 templates\compiled 目录下文件时,请不要删除 admin 目录。

PS:文件修改后如果是 UTF-8 编码的请保存时选择 UTF-8 编码,且要删除编辑器中的 UTF-8 签名。不要使用文件编辑器编辑文件。

在PHP.ini把allow_call_time_pass_reference = Off
改成allow_call_time_pass_reference = On

按照网上搜到方法修改后。。。出现以下问题。。。完全不知道如何解决了。。。希望会的可以帮一下。。

Warning: array_pop() [function.array-pop]: The argument should be an array in E:\WWW\upload\includes\cls_template.php on line 387

Warning: array_pop() [function.array-pop]: The argument should be an array in E:\WWW\upload\includes\cls_template.php on line 387

Parse error: parse error, unexpected T_ENDFOREACH in E:\WWW\upload\includes\cls_template.php(1163) : eval()'d code on line 116

回答:
顶一下.求解

PHP 配置的原因吧,具体我就不知道了

楼主的问题,最终是如何解决的?

Only variables can be passed by reference
之类的错误在2.7.2版本竟然还有,刚装好就得自己改问题。。

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /volume1/web/shop/includes/cls_template.php on line 489

如何處理阿?? 求解~