У меня очень простой вопрос по PHP. ( Пожалуйста , сначала не делайте -1.)

Представьте, что у нас есть такой массив:

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

(НЕ СОРТИРУЕТСЯ).

Итак, я хочу 2 вещи:

  1. Сначала найдите, сколько значений в этом массиве (в этом это 8 );

  2. Во-вторых, если он имеет более 5 значений, тогда просто верните 5 первых значений (как я уже сказал, он не отсортирован по номерам массивов, ТАК, я просто хочу вернуть 5 первых значений)

Как это сделать в PHP?

((Мне очень жаль, потому что я ТАК новичок и не могу найти решения в других вопросах))

0
Cab 2 Авг 2014 в 16:39

3 ответа

Лучший ответ

Количество элементов: count ()

$n = count($array);

Первые 5 элементов: array_slice ()

$new_array = array_slice($array, 0, 5);
5
mcont 2 Авг 2014 в 12:47

Для подсчета элементов вы можете использовать count(). Чтобы получить только первые пять значений, вы можете использовать array_slice () .

if(count($array) > 5) {
    $array = array_slice($array, 0, 5);
}
4
Charlotte Dunois 2 Авг 2014 в 12:42

Вы можете использовать count для подсчета количества массивов.

Вот так:

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

и array_slice будет лучше

array_slice($array, 0, 5)

подробнее см. в этом ответе:

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

3
Community 23 Май 2017 в 12:31