访问对象中的数组

时间:2016-02-29 23:46:22

标签: php arrays

在PHP中我打印了return '<pre>'.print_r($getFileId,true).'</pre>';这是一个对象。这将返回:

<pre>Illuminate\Support\Collection Object
  (
    [items:protected] => Array
      (
        [0] => 1
        [1] => 2
        [2] => 3
      )

  )

如何访问数组的最后一个元素。尝试end($getFileId),但它返回了:

<pre>Array
(
  [0] => 1
  [1] => 2
  [2] => 3
)
</pre>

2 个答案:

答案 0 :(得分:0)

您的Illuminate对象有一个专门用于此目的的方法:

DB_TIMESTAMP

有关详细信息,请参阅the docs

答案 1 :(得分:0)

显然,您的$getFileId变量是Collection对象,而不是数组。这就是为什么在其上调用end函数不起作用,但它也不会因为它实现ArrayAccess而失败。

你可以通过多种方式实现这一目标:

end($getFileId->all());

$getFileId->flip()->first();

//beware, this one alters the collection by also removing the last element
$getFileId->pop();

$getFileId->slice($getFileId->count() - 1, 1)->first();

但是当你只是这样做时,所有这些都只是在圈内运行:

$getFileId->last();