在thinkphp处理图片上传功能的时候,针对错误情况抛出错误提示,但出现以如下提示:
致命错误: Cannot use object of type stdClass as array
代码如下:
$pid = input('pid')!= NULL ?input('pid'):session('pid'); $res = Upload::image('file','attach'.DS.date('Y').DS.date('m').DS.date('d'),true,true,null,'uniqid',1); if(!is_array($res)){ $info = array( 'code' =>400, 'msg' =>'上传失败:'.$res, 'src' =>'' );
这个提示原因是指不能把stdClass的对象做数组使用,所以说我们要解决这个问题就必须把stdClass对象转换成数组类型才行,解决方法有两种:
$res = json_decord($res,true);//这样就可以采用$res['msg']的方式进行访问
或者$res = json_decord($res),但使用$res->msg的方式进行访问即可,或者可以做个判断$res是否为数组对象,如:count($res)?$res:[];
扫码关注公众号
长沙网站设计,长沙软件开发,长沙进销存开发,php进销存系统,ViooMa收银系统,ThinkPHP框架进销存系统
湘ICP备19023859号-1
Copyright©2020 长沙唯马网络科技有限公司. All Rights Reserved.