Здравствуйте. Можно ли решить такую задачу... Код (Text): $a = array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17); echo '<pre>'. print_r ($a, true).'</pre>'; Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 [7] => 8 [8] => 9 [9] => 10 [10] => 11 [11] => 12 [12] => 13 [13] => 14 [14] => 15 [15] => 16 [16] => 17 ) Код (Text): $array = array_slice($a, -5, 5); echo '<pre>'. print_r ($array, true).'</pre>'; Выводит: Array ( [0] => 13 [1] => 14 [2] => 15 [3] => 16 [4] => 17 ) Код (Text): $array = array_slice($a, -10, 5); echo '<pre>'. print_r ($array, true).'</pre>'; Выводит: Array ( [0] => 8 [1] => 9 [2] => 10 [3] => 11 [4] => 12 ) Код (Text): $array = array_slice($a, -15, 5); echo '<pre>'. print_r ($array, true).'</pre>'; Выводит: Array ( [0] => 3 [1] => 4 [2] => 5 [3] => 6 [4] => 7 ) Код (Text): $array = array_slice($a, -20, 5); echo '<pre>'. print_r ($array, true).'</pre>'; Выводит: Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 ) А нужно, чтобы на выходе было: Код (Text): Array ( [0] => 1 [1] => 2 )
исходя из выше представленной логики, следует такой вариант Код (Text): $array = array_slice($a, -20, 2); echo '<pre>'. print_r ($array, true).'</pre>'; Выводит: Array ( [0] => 1 [1] => 2 )
Массив А - это скажем новости. Нужно сделать постаничную навигацию по 5 новостей на странице. При чем на первой странице должны отображаться последние новости. Для этого воспользовался функцией array_slice($a, -20, 5); Минус значит изначально выбираем 5 новостей с низу. Все нормально работает когда ставим 5, 10, 15, а вот когда 20 Выходят уже новости 1, 2, 3, 4, 5. Это не правильно, потому-что новости 3, 4, 5 выходили когда ставили 15. Вот так вот. Может я слишком заморочился. И стоит перевернуть массив?