[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: foreach
Страницы: 1, 2
SnowWind
а можно ли во время перебора foreach сместить указатель на следующий ключ?


собственно вот что пытаюсь сделать

foreach($comments as $id => $comment) {
?>
<div class="comments_block"><div class="even" id="comment-item-<?php echo $id; ?>"><?php echo $comment; ?></div>
<?php
$i++;
?>
<div class="even" id="comment-item-<?php echo $id; ?>"><?php echo $comment; ?></div></div>
<?php
}


во второй <div class="even" должно попасть следующее значение $comment

for не предлагать :)
johniek_comp
break

_____________
user posted image
SnowWind
blink.gif
причём тут break?
johniek_comp
johniek_comp
Цитата
а можно ли во время перебора foreach сместить указатель на следующий ключ?


Цитата
break



_____________
user posted image
rooor
не понимаю для чего это надо, может я вопрос не так понял...
foreach($comments as $id => $comment){
echo '<div class="comments_block"><div class="even" id="comment-item-'.$id.'">'.$comment.'</div>
<div class="even" id="comment-item-'
.$id.'">'.$comments[$id+1].'</div></div>';

$i++;
}
SnowWind
break останавливает выполнение цикла, а не переносит указатель
мне нужно перенести назад его, что бы при след. проходе он пропустил предыдущий элемент.
rooor
мне кажется вы немного не с той стороны заходите...
Цитата
что бы при след. проходе он пропустил предыдущий элемент

это как?
Valick
SnowWind
prev(), next(), current(), each(), end(), reset()
и не надо зацикливаться на for и foreach, с помощью while тоже можно массивы обходить, только надо учитывать некоторые подводные камни.


_____________
Стимулятор ~yoomoney - 41001303250491
SnowWind
Цитата (Valick @ 13.04.2013 - 16:22)
SnowWind
prev(), next(), current(), each(), end(), reset()
и не надо зацикливаться на for и foreach, с помощью while тоже можно массивы обходить, только надо учитывать некоторые подводные камни.

нет это не срабатывает
SnowWind
Цитата (rooor @ 13.04.2013 - 16:08)
мне кажется вы немного не с той стороны заходите...
Цитата
что бы при след. проходе он пропустил предыдущий элемент

это как?

это что бы

foreach($comments as $id => $comment) {
?>
<div class="comments_block"><div class="even" id="comment-item-<?php echo $id; ?>"><?php echo $comment; ?></div>
<?php
$i++;
// вот тут перенести указатель назад
?>
<div class="even" id="comment-item-<?php echo $id; ?>"><?php echo $comment; ?></div></div>
<?php

// вот тут ещё назад
}


и заново
rooor
а конечная цель какая? вывести комментарии в обратном порядке?
SnowWind
ага, это в джумле так, но я к тому же хочу их сделать в 2 столбца, поэтому и добавил 2 дива
rooor
а в запросе нельзя прописать ORDER BY ... DESC?
SnowWind
нет это всё не то, так не пойдёт, ладно с for буду чё-нить думать
просто там с ним есть свои трудности
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.