Laravel toArray 对象转数组问题?
目前单条数据对象 toArray() 可以转成数组,多条数据对象toArray()后外层是数组,内层还是对象,这是什么情况。laravel有没有解决办法?自己再转一次数组感觉很不方便
找到解决办法了
关于 LearnKu
只有实现了
Arrayable接口的对象才会被转换成array@dongyuhappy 怎么实现?我直接用Laravel Eloquent ORM的toArray()方法
@zqf1025 直接丢代码了
这个是Collection的toArray方法
如果你的内部对象是
Arrayable的,必然会返回一个数组。你现在没有返回数组,你要检查下,你Collection里面包含的对象到底是什么。好麻烦,为什么查询出来的结果是集合对象?花了时间记一套数组函数就足够了,这里又要记忆一套仅仅适用laravel框架的集合函数,增加多少时间成本,而且还不适用于其他框架。
@dongyuhappy 其实 model 对象也是 Arrayable 的,如果里面对象是 model 的话,应该可以转化为数组的
laravel查询出来的数据感觉都是对象的
为什么我用 toarray() 就报错呢
lumen.ERROR: exception 'BadMethodCallException' with message 'Call to undefined method Illuminate\Database\Query\Builder::toarray()' in D:\mall\appserver\vendor\illuminate\database\Query\Builder.php:2258 Stack trace: #0 [internal function]: Illuminate\Database\Query\Builder->__call('toarray', Array) #1 [internal function]: 这个是什么错误呢
@zhaoxiaobo 你是如何调用方法的
@zhaoxiaobo $user = User::get()->toArray(); 你这样试试