与数组的最后15个元素在一起

时间:2018-11-19 16:23:02

标签: php

我在ouchdb上有一个数据库,每个文档都有一个稍微复杂的结构,这是一小部分:

'null'

我以前有更多的值,但是这没有意义,所以我编写了代码将其限制为最多15个值。

   "category": {
      "1496805145": -1,
      "1497064141": -1,
      "1497150993": -1,
      "1497322542": -1,
      "1497487102": -1,
      "1497571701": -1,
      "1497657026": -1,
      "1497749178": -1,
      "1497920895": -1,
      "1498005644": -1,
      "1498091037": -1,
      "1498179039": -1,
      "1502183511": -1,
      "1502309289": -1,
      "1502395763": -1,
      "1502482211": -1,
      "1502568580": -1,
      "1502655044": -1,
      "1502741651": -1,
      "1502827775": -1,
      "1502914685": -1

我的问题是是否有一个php函数说“保存我错误的最后15个元素,但删除所有其他元素”?

2 个答案:

答案 0 :(得分:2)

我认为您想要array_slice()。您给它一个偏移量和一个长度,它将以数组的形式返回这些值。请参阅PHP文档:http://php.net/manual/en/function.array-slice.php

一个例子:

$truncatedArray = array_slice($pro, -15);

这将为您提供数组$pro的最后15个元素

答案 1 :(得分:2)

使用array_slice($a, -15, 15, true);,其中$a是数组。

-15告诉函数从末尾开始的15个元素开始。

15告诉该函数获取15个元素。

true告诉函数还保留键,我假设您也这样做。

如果您不想保留键,则可以使用array_slice($a, -15);,因为缺少第三个参数,它将获取元素,直到到达最后一个(因此为15)