Цикл for и вывод масива в обратном порядке

kvins
На сайте с 23.08.2011
Offline
95
2824

Подскажите мне пожалуста как мне вывести из цикла последние 5 записей ??

обычно делаю так

for ($i=0; $i<count($gids2); $i++)

{

echo $gids2[$i];

}

Но тут пока не выставлен лимит , и идет цикл по порядку (

Магазин уникальных статей. (http://linkum.ru/to/13254/)
Mad_Man
На сайте с 10.11.2008
Offline
162
#1

Серьёзно штоле?

for ($i = count($gids2); $i > count($gids2) - 5; $i--)
{
echo $gids2[$i];
}
LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#2

$gids2=array_reverse($gids2)

for ($i=0; $i<5; $i++)

{

echo $gids2[$i];

}

А вообще лучше for вообще для таких задач не юзать:

$i=0;

$counz=count($gids2);

while ($i!=5)

{

echo $gids2[($countz-$i)];

$i++;

}

---------- Добавлено 25.08.2012 в 20:25 ----------

и никогда в for конструкцию не вставляйте count, не надо напрягать скрипт каждый раз считывать количество.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
F
На сайте с 17.05.2009
Offline
28
#3

Не забудь только проверить, что в массиве больше/равно 5 ячеек :)

W
На сайте с 29.04.2012
Offline
4
whi
#4

ТС, вам здесь цикл как-бы и не нужен


<?php
$my_array = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
$my_delimiter = '<br />';
$queue_offset = 5;

echo implode($my_delimiter, array_slice($my_array, count($my_array) - $queue_offset));
?>

или так:


<?php
$my_array = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
$my_delimiter = '<br />';
$queue_offset = 5;

echo implode($my_delimiter, array_slice($my_array, -$queue_offset));
?>

но лично я отрицательные индексы не люблю )

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий