2009-03-03 3 views
0

Я пытаюсь, но я stucked с логикой ... так, у меня есть это:динамические строки и столбцы внутри цикла Еогеасп

$max_items=10; 

echo '<table>'; 
echo '<tr>'; 

foreach ($feed->get_items(0, $max_items) as $item): 

echo '<td>'; 
echo $some_value; 
echo '</td>'; 

endforeach; 

echo '</tr>'; 
echo '</table>'; 

Я хочу, чтобы показать результаты, как это:

[1][2] 
[3][4] 
[5][6] 
[7][8] 
[9][10] 

Должен ли я использовать инструкцию while? А для цикла? Внутри или снаружи кода foreach?

Я действительно не понимаю ...

Спасибо за любую помощь

ответ

0

Вот очень простой пример того, как сделать этот вид HTML здания.

<?php 

$data = range('a', 'z'); 
$numCols = 2; 

echo "<table>\n"; 
echo "\t<tr>\n"; 

foreach($data as $i => $item) 
{ 
    if ($i != 0 && $i++ % $numCols == 0) 
    { 
     echo "\t</tr>\n\t<tr>\n"; 
    } 
    echo "\t\t<td>$item</td>\n"; 
} 

echo "\t</tr>\n"; 
echo '</table>'; 

Таким образом, вы можете изменить $ numCols быть 3 или 4 (или любое количество), и всегда видеть, что число столбцов в выводе, и он делает это без с помощью вложенного цикла.

+0

спасибо Питер! что оператор Modulo и что $ i => $ item работает на 100%, действительно спасибо – 2009-03-03 23:19:55

0

Посмотрите на эту ссылку на Displaying Recent Posts On a Non-WordPress Page. Я думаю, что то, что вы, возможно, ищете, - это способ петли над методами получения объектов. Для этого вам понадобится вложенный цикл и какое-то отражение.

+0

Nope .. но спасибо, у меня уже есть simplePie, отлично работающий с настраиваемыми полями и настроенными тегами атома. Я просто не знаю, как разорвать результаты в разных строках ... Мне нужен отдых и больше уроков php. – 2009-03-03 21:27:06

0

Я только недавно работал с SimplePie в февральском выпуске Cogenuity, так что это все еще свежо в моем сознании.

  • Ваша $some_value переменная никогда не инициализируется.
  • объекте $ элемент будет иметь такие методы, как get_permalink(), get_title(), get_description() и get_date()
+0

Привет, Глиен, спасибо! Но это фрагмент моего кода. У меня есть что-то вроде этого до этой части: $ max_items = 10; $ feed = new SimplePie(); $ feed-> set_feed_url (массив ( \t 'http://xxxx.com/test/tag/destaque/?feed=atom' \t )); $ feed-> set_item_class ('SwapDates'); $ feed-> strip_htmltags (false); – 2009-03-03 21:47:52