PHP数组如果有超过X的值,则返回最后的Y值

时间:2014-08-02 12:39:47

标签: php arrays

我有关于PHP的非常简单的问题。 (请先不要-1。)

想象一下,我们有这个数组:

Array {
[1] => Hi
[3] => Hey
[5] => You
[9] => hello
[13] => yes
[66] => Test
[86] => Test2
[96] => Test3
}

(它不是SORTed)。

所以,我想要两件事:

  1. 首先,找出此数组中有多少个值(在此数据中, 8 );

  2. 其次,如果它有超过 5 值,那么只返回5个第一个值(因为我说它没有按数组编号排序,所以,我只想返回5个第一个价值观)

  3. 我们怎样才能用PHP做到这一点?

    ((我很抱歉因为我是初学者,在其他问题上找不到解决方案))

3 个答案:

答案 0 :(得分:5)

元素数量:count()

$n = count($array);

前5个元素:array_slice()

$new_array = array_slice($array, 0, 5);

答案 1 :(得分:4)

要计算您可以使用的元素count()。要获得前五个值,您可以使用array_slice()

if(count($array) > 5) {
    $array = array_slice($array, 0, 5);
}

答案 2 :(得分:3)

您可以使用count来计算数组的数量。

喜欢这样:

$result = count($array);// if array  is variable

和array_slice将是一个更好的主意

array_slice($array, 0, 5)

有关详细信息,请参阅此答案:

https://stackoverflow.com/a/3771228/3151394