删除数组元素到特定数量

时间:2018-10-01 12:16:01

标签: php arrays

我有数组:

UPDATE test 
SET lines=ARRAY(
SELECT line FROM UNNEST(lines) AS line
UNION ALL
SELECT (
'::someValue::,
ARRAY<STRUCT<STRING,STRING,FLOAT64>>[('someId','someString',1.0)]
)
WHERE id='someId'

我想将其修剪为 3 个元素,所以最终得到:

array('a','b','c','d','e');

在考虑优化的情况下实现此的最佳实践是什么?我的阵列很大。

到目前为止我已经尝试过的

  1. array('a','b','c'); 遍历数组并存储前3个元素。
  2. 计数数组并使用foreach()

我觉得有一个标准的功能或方法。

2 个答案:

答案 0 :(得分:1)

您可以使用array-slice,例如:

$data = array_slice($arr, 0, 3);

答案 1 :(得分:1)

您没有尝试过

array_slice($input, 0, 3);

这是最简单和PHP的标准方式