yii如何将对象转化为数组或直接输出为json格式

广告:宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取~~~

yii如何将对象转化为数组或直接输出为json格式

如何转化为数组?

(学习视频分享:编程视频)

我们在使用Yii 的Active Record 来获取查询结果的时候,返回的结果集是一个对象类型。如果我们希望能够更加方便地处理数据,可以将它转成数组返回,比如下面的方法:

// 查找满足指定条件的结果中的第一行$post=Post::model()->find($condition,$params);// 查找具有指定主键值的那一行$post=Post::model()->findByPk($postID,$condition,$params);// 查找具有指定属性值的行$post=Post::model()->findByAttributes($attributes,$condition,$params);
登录后复制

返回一条结果的时候直接用 $post->attributes; 就可以了。

如果要返回FindAll数组呢,要怎么处理呢?

有两种方法:

第一种是使用自定义的函数,如下

/** * 简化findall数据 * */function simplifyData($data){foreach($data as $key=>$val){$newData[$key] = $val->attributes;}return $newData;}
登录后复制

然后使用函数直接转换结果

第二种是使用很简单的方法:

$products = ProTuan::model()->findAll($criteria);$products = json_decode(CJSON::encode($products),TRUE);
登录后复制

作用是就先将findAll结果先转成JSON格式,然后再转为数组

至于findALL转为JOSN格式其实就是使用

CJSON::encode
登录后复制

相关推荐:Yii框架

以上就是yii如何将对象转化为数组或直接输出为json格式的详细内容,更多请关注9543建站博客其它相关文章!

9543建站博客
一个专注于网站开发、微信开发的技术类纯净博客。
作者头像
admin创始人

肥猫,知名SEO博客站长,14年SEO经验。

上一篇:总结thinkphp实现前后端分离验证码的技巧
下一篇:微信小程序没声音怎么解决?

发表评论

关闭广告
关闭广告