ThinkPHP5——模型查询返回的对象转换为数组

一笑奈何 提交于 2020-01-07 04:38:35

使用模型查询的返回的结果集为对象,其中里面的数据,TP5框架会自动对里面的data:protected该项进行处理。

但有时我们就想要数据,就想返回一个数组就可以了,怎么办?有两种方法可以实现:

方法一:找到TP5框架中的database.php文件,该文件中找到 resultset_type 该项,将后面的 array 改成 \think\Collection 【注意大小写】

// 数据集返回类型
'resultset_type'  => 'array', 

改为

// 数据集返回类型
'resultset_type'  => '\think\Collection',

在查询数据的时候,在后面加上 ->toArray(); 例如:

$data = User::select() -> toArray();

 

方法二:在模型里设置

首先在Model中添加该属性:

protected $resultSetType = 'collection';

在查询数据的时候,在后面加上 ->toArray(); 例如:

$data = User::select() -> toArray();

 

tp5输出的数组如何放到js里使用

var arr = {:json_encode($user)};
console.log(arr)
 
输出打印结果如下:
(2) [{…}, {…}]

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!