【发布时间】:2019-12-10 03:55:00
【问题描述】:
我正在使用 laravel 的 Illuminate\Database 包作为我的核心 PHP 代码的独立数据库连接器。我正在尝试使用更新版本(即 5.8)升级代码,有趣的是,此包的新版本现在将查询结果返回为 \Illuminate\Support\Collection 对象。因此,我需要通过附加 ->toArray() 方法来更改我现有的查询。有什么方法可以将集合的默认返回类型转换为数组,或者任何中间件或挂钩将查询结果作为数组进行操作?
以下是我现有的查询,在旧版本中运行良好
$MYDBOBJ->db->table("user")->select("*")->where("status", 'Active')->get();
如果我需要解决这个问题,那么我需要修改我的查询,如下所示:
$MYDBOBJ->db->table("user")->select("*")->where("status", 'Active')->get()->toArray();
以上内容适用于新版本,但我需要在很多文件中进行更改。
如果我不使用 toArray() 方法,那么我会得到包含在
中的结果Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => Array
(
[something] => somestring
)
)
)
我要求如下:
Array
(
[0] => Array
(
[something] => somestring
)
)
那么有什么办法可以克服这个选项并将查询结果作为一个数组来操作?
【问题讨论】:
标签: php laravel eloquent laravel-5.8