Ecshop提示Only variables should be passed by reference in错误

Ecshop是个坑爹货,为什么tiandi会说它是个坑爹货呢,请看一下下面的官方的运行环境推荐:

服务器端运行环境推荐
·php版本5.0以上5.3以下的版本(推荐使用5.2系列版本)
·Mysql版本5.0及以上
·空间安装zend
·空间支持文件锁功能
·开启GD功能
·Mysql函数支持mbstring、iconv、fsockopen
看见了吧,PHP5.3以下的版本,还推荐使用5.2的,尼妹的,现在哪个虚拟机还敢用5.3以下的版本?还在用5.3以下的版本?看看tiandi用的2两个主机,衡天的和wopus的都是5.3.28,至于为什么不用5.3以下的版本,自己google”php内存泄露”。

Ecshop上个月刚更新了最新版本,写代码的思路依旧坚挺,仍旧使用5.2版本,好吧,为了做一些测试,需要在本机上进行调试,但本机上装了wp3.9,忘了从哪个版本开始wp只支持5.3以上的php,所以本机的PHP环境是5.4.13。起先,做了两个批处理来切换php5.2.1和php5.4.13,然后发觉一直用批处理切换也累啊,索性直接5.4.13上跑ecshop看看哪里有问题就改哪里吧,结果泥煤的首页直接来个错误。

Strict Standards: Only variables should be passed by reference in D:\tiandiyoyo\hengtian\ecshop\upload\includes\cls_template.php on line 424

不淡定了,打开cls_template.php,定位到424行,发现下面内容:

 代码如下 复制代码

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

将其注释掉,分别拆开,添加两行

 代码如下 复制代码

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

原因在于PHP5.3版本开始,array_shift不支持函数返回,记得之前博客里好像还有个帖子专门说了php5.3版本的改变,刚搜索没找到,?濉D壳捌渌?趁婀δ芑姑淮蚩???荒芘龅轿侍庠傩薷拇?肓恕?/p>

时间: 2024-08-03 05:52:17

Ecshop提示Only variables should be passed by reference in错误的相关文章

php5.5中ecshop提示Only variables should be passed by reference

php大家用的版本不断提高,Ecshop没有来得及修改那么及时. Ecshop安装出现 Only variables should be passed by reference 5.3以上版本的问题,应该也和配置有关 只要418行把这一句拆成两句就没有问题了  代码如下 复制代码  $tag_sel = array_shift(explode(' ', $tag)); 改成:  $tag_arr = explode(' ', $tag);  $tag_sel = array_shift($tag

ecshop提示Strict Standards: Only variables should be passed by reference in错误

ecshop提示Strict Standards: Only variables should be passed by reference in E:/Tools/ECShop_V2.7.3_UTF8_release1106/upload/includes/cls_template.php on line 418 这个错误,搜索问题原来是php版本的问题,我是用的php5.4版本的,解决办法如下:    只要418行把这一句拆成两句就没有问题了   代码如下 复制代码 $tag_sel = a

ECshop Strict Standards: Only variables should be passed by reference in解决办法

错误提示 Strict Standards: Only variables should be passed by reference in D:/wamp/ecshop/includes/cls_template.php on line 406 用软件打开406行是这句话$tag_sel = array_shift(explode(' ', $tag)); 解决方法 5.3以上版本的问题,应该也和配置有关 只要406行把这一句拆成两句就没有问题了  代码如下 复制代码 $tag_sel = a

解决ECShop出现Strict Standards: Only variables should be passed by reference in问题

今天开始研究ECShop,在安装完成的时候发现首页顶部.左侧和底部出现: Strict Standards: Only variables should be passed by reference in F:\wamp\www\ecshop\upload\includes\cls_template.php on line 418 的报错信息. 第一种解决方法是杀到cls_template.php文件中发现下面这段代码: $tag_sel = array_shift(explode(' ', $

Strict Standards: Only variables should be passed by reference in

php中使用内置的reset函数可以获取array的第一个元素的值.例如:  代码如下 复制代码 $arr = array('one', 'two', 'three'); echo reset($arr);   // 输出的结果为 one对于下述代码,如果php开启了"Strict Standards",将会看到"Strict Standards: Only variables should be passed by reference in"的提示.  代码如下

ecshop提示Strict Standards: Non-static method cls_image::gd_version()

在使用ecshop时提示 ecshop提示Strict Standards: Non-static method cls_image::gd_version() should not be called statically in E:/wwwroot/weirenchou/includes/lib_base.php on line 346 这个错误,搜索问题原来是php版本的问题,我是用的php5.4版本的,解决办法如下: 找到346行吧 return cls_image::gd_versio

myeclipse-MyEclipse 频繁闪退 弹出框提示myEclipse异常处理程序遇到无法处理的内部错误

问题描述 MyEclipse 频繁闪退 弹出框提示myEclipse异常处理程序遇到无法处理的内部错误 myeclipse 频繁闪退,弹出提示框如下: .meta文件中报错如下: !ENTRY org.eclipse.ui.workbench 4 0 2015-08-26 13:31:46.703 !MESSAGE Widget disposed too early for part org.eclipse.jdt.ui.CompilationUnitEditor !STACK 0 java.l

c语言-以下异或加密代码提示一个奇怪的问题,数字上的错误后缀

问题描述 以下异或加密代码提示一个奇怪的问题,数字上的错误后缀 void EncryptXOR (long s[8]) { char key[4] = { 'mque' }; int a[4],b[4]; for (int i= 0; i<= 3; i++) { a[i] = int(s[2i+1] * 16 + s[2i]); } for (int j = 0; j <= 3; j++) { b[j] = a[3-j] ^int( key[j]); printf("%c"

myeclipse工具出问题了,在js代码中Alt+/提示东西的时候,报了下面的错误

问题描述 myeclipse工具出问题了,在js代码中Alt+/提示东西的时候,报了下面的错误 rt,求解决 解决方案 看不到信息,能不能重新截图 解决方案二: 看不到图片,没法判断,为什么不用eclipse.个人感觉eclipse很好用.http://www.kxikx.com/index.jsp