php 将对象转成数组,关于php:将laravel对象转换为数组

Laravel输出:

Array

(

[0] = stdClass Object

(

[ID] = 5

)

[1] = stdClass Object

(

[ID] = 4

)

)

我想将其转换为普通数组。 只想删除该stdClass Object。 我也尝试使用->toArray();,但出现错误:

Call to a member function toArray() on a non-object.

我怎样才能解决这个问题?

功能已在http://www.srihost.com上实现

该对象是否来自数据库? 我还没有使用过laravel,但是也许有一个API可以生成一个关联数组而不是对象。 无需转换整个对象,然后将它们转移到另一个数组中

是的,它来自数据库。

有重复的问题吗? stackoverflow.com/questions/28658891/

自Laravel 5.4版本开始更新,不再可用。

您可以更改数据库配置,如建议使用@Varun,或者如果只想在这种情况下执行此操作,则:

DB::setFetchMode(PDO::FETCH_ASSOC);

// then

DB::table(..)->get(); // array of arrays instead of objects

// of course to revert the fetch mode you need to set it again

DB::setFetchMode(PDO::FETCH_CLASS);

我认为您应该添加一个问题,这不仅将更改所有查询的获取模式。但是很高兴知道也可以这样改变

是的,除非您将其还原,否则它将影响此请求的所有查询。编辑清楚。

您还可以编辑config / database.php,将fecth => PDO :: FETCH_CLASS替换为PDO :: FETCH_ASSOC

foreach($yourArrayName as $object)

{

$arrays[] = $object->toArray();

}

// Dump array with o

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值