安装ecshop默认安装后的错误解决方案

1,统一解决
php.ini中的配置 error_reporting = E_ALL | E_STRICT
这是说,显示那些不符合编码规范的警告(coding standards warnings)。
建议取消error的输出,如果出于调试需要,应改为
error_reporting = E_ALL & ~E_NOTICE

2.首页出现报错:Only variables should be passed by referen
找到出错行(includescls_template.php 文件的418行)
$tag_sel = array_shift(explode(‘ ‘, $tag));
改成:
$tag_bak = explode(‘ ‘, $tag);
$tag_sel = array_shift($tag_bak);
因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值,后台更新缓存后正常。
另一个地方同样修改(includeslib_main.php”文件的1329行):
//$ext = end(explode(‘.’, $tmp));
$ext_bak = explode(‘.’, $tmp);
$ext = end($ext_bak);

 

3.Strict Standards: Non-static method cls_image::gd_version() should not be called statically
找到出错行(includeslib_base.php”文件的346行)
return cls_image::gd_version();
改成:
$p = new cls_image();
return $p->gd_version();
是因为gd_version()方法未声明静态static,所以会出错。

 

4. Strict standards: mktime(): You should be using the time() function instead
错误行:$auth = mktime();
PHP手册里http://cn2.php.net/manual/en/function.mktime.php有个Note:
As of PHP 5.1, when called with no arguments, mktime() throws an E_STRICT notice: use the time() function instead.
自从PHP5.1起,调用这个函数不传递参数,会出现一个 notice

批量替换mktime()为@mktime()即可

转载于:https://www.cnblogs.com/doseoer/p/4007700.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值