将集合转换为雄辩的对象



当前我正在使用Laravel 5.2内的Xero API。我想通过这些数据利用雄辩的力量。

实际上我可以恢复发票,甚至可以使用链接方法过滤它们,如下所示:

    $invoices = XeroPrivate::load('Accounting\Invoice')
        ->where('Status', 'DRAFT')
        ->execute();

如果我做var_dump,我会得到这种数据:

object(XeroPHPRemoteCollection)[173]
  public 0 => 
    object(XeroPHPModelsAccountingInvoice)[171]
      protected '_data' => 
        array (size=31)
          'Type' => string 'ACCPAY' (length=6)
          'Contact' => 

雄辩的链接方法可以让我执行这样的事情。目前失败:

    $invoices = XeroPrivate::load('Accounting\Invoice')
        ->where('Date','>','2016-03-20')
        ->execute();

检查Laravel的文档,据推测我可以使用collect转换为藏品:

    $collection = collect($invoices);

$collection不能解决问题。现在,数据结构是不同的,但仍然无法使用雄辩。现在数据是:

object(IlluminateSupportCollection)[163]
  protected 'items' => 
    array (size=24)
      0 => 
        object(XeroPHPModelsAccountingInvoice)[171]
          protected '_data' => 
            array (size=31)

显示数据是IlluminateSupportCollection,似乎是正确的。

谢谢!

您可以使用 first()方法来获取集合的单个项目。

$entity = $collection->first();

您可以在此处找到有关IlluminateSupportCollection可用方法的更多信息。

相关内容

  • 没有找到相关文章

最新更新