0
点赞
收藏
分享

微信扫一扫

关于TS返回 Can't use function return value in write context 问题

夏天的枫_ 2022-02-22 阅读 80


在项目开发过程中,出现某一接口文件间歇性出现500错误,间歇性出现说明是有条件才会产生,查看错误日志显示:

Fatal error​: Can't use function return value in write context in ​/home/xxx/xxxxm/api/sxxx/lGoodsApi.class.php​ on line ​82

上网查了下说这是 TP 的一个 bug,提高 php 版本就可以了。考虑到成本太高细细看了看错误发生行的代码如下:

if(empty(S('reception_cat_list'))) {

结合错误日志的说明Can't use function return value in write context ,不能使用返回值***(原谅我的英文水平低下)推断可能是TS 的S方法在emty方法中再加上服务器环境因素(本项目一台是apache,一台是php-fpm仅PHP版本有出入)会出现语法错误的问题。

知道错在哪就好办了,把代码修改成:

$cache_data = S('reception_cat_list');

if(empty($cache_data)) {

运行,问题没有了。看来在TS 中不用empty 和S直接结合使用,会有不兼容问题。



author:gj



举报

相关推荐

0 条评论