【问题标题】:Retrieve nested array in laravel view在 laravel 视图中检索嵌套数组
【发布时间】:2016-01-24 13:36:44
【问题描述】:

我的对象看起来像

 { ["message"]=> object(Google_Service_Gmail_Message)#154 (14)
     {  ["historyId"]=> string(4) "1001" 
        ["id"]=> string(16) "15096ab785de59868a" 
        ["internalDate"]=> string(13) "1445635228000" 
        ["labelIds"]=> array(4) 
             { [0]=> string(5) "INBOX" 
               [1]=> string(9) "IMPORTANT" 
               [2]=> string(17) "CATEGORY_PERSONAL" 
               [3]=> string(6) "UNREAD" }.... 

我的问题是,对于history id,我可以通过$message->historyId 得到它。

但是我如何在视图页面中呈现labelIds 内容。我特别喜欢UNREAD。我该怎么办?

【问题讨论】:

  • type $message->labelIds 然后你会得到一个数组,然后foreach这个数组你会得到输出。
  • $message->labelIds[3] ?

标签: arrays laravel object


【解决方案1】:

cmets 中的答案是正确的。既然你在这里特别提到了 Laravel,我将添加 Laravel 特定的帮助函数,这可能是你所追求的。

对于 Laravel 对象,“array_get”将返回到您喜欢使用点表示法的任何嵌套级别。然后,您还可以在其上执行您需要的任何其他功能。在您的示例中,这可能是:

array_get($message, 'labelsIds', 'default');

以上内容可以根据您想要获得的级别进行重置,并包括一个默认值,如果您愿意,您可以将其设置为 UNREAD。

另外,如果你想返回一个包含所有嵌套值的扁平数组(键将被删除),你可以使用 Laravel 4.2 的 array_fetch。

看看这方面的手册 - 它可能会有所帮助:http://laravel.com/docs/5.1/helpers#method-array-gethttp://laravel.com/docs/4.2/helpers 获取

【讨论】:

    猜你喜欢
    • 2021-01-07
    • 1970-01-01
    • 2022-08-09
    • 2017-07-17
    • 2014-05-17
    • 2020-06-03
    • 2018-12-15
    • 2016-04-15
    • 2017-08-28
    相关资源
    最近更新 更多