欢迎光临
我们一直在努力

错误:Can’t use function return value in write context解决办法

这是在最近项目中遇到的一个问题,项目采用ThinkPHP5框架进行开发。一个功能写完之后测试时出现了“Can’t use function return value in write context”的错误。刚开始以为是代码的问题,所以对代码进行了仔细的检查,后来翻译了一下才知道原意是:在这个情景中的函数里不能使用返回值。我去,好悲伤的一个故事啊!

if(empty(Cache::get($cache_key))){
	...
}

解决方法一:在empty()中使用变量。 因为
在PHP版本5.4以下类似empty()、is_array()的函数不能直接判断某功能的返回值,只能写成变量的形式。

解决方法:

#将下面一行
empty(Cache::get($cache_key))
#改为:
$temp_cache = Cache::get($cache_key);
empty($temp_cache)

解决方法二:升级PHP版本。

我查了下我本地PHPStudy的版本的php5.4,当版本升级到5.6的时候,该错误就没有了。目前PHP最新版本是7.2,不管是性能还是支持方面都是不错的,所以在项目开发中也建议大家采用稳定的高版本。

以上内容就是波波项目中遇到的坑和解决方法,希望对需要的朋友有所帮助。

赞(0)
版权归原作者所有,如有侵权请告知。达维营-前端网 » 错误:Can’t use function return value in write context解决办法

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址