вывод в несколько столбцов

Serguitar

Новичок->продвинутый
syst3m
В мане никто об этом и не пишет. Тебе не обязателен номер. Например, перед массивом можешь написать $i=1;, а в массиве $i++ и проверять текущее значение $i. Всё! Работай.
 

Кром

Новичок
Ты можешь просто создать счетчик в цикле - $i и увеличивать его $i++.
 

syst3m

Новичок
$i=0;
echo "<Table border=0>";
foreach($array as $v)
{
$i++;
if ($i=="1")
{
echo '<tr><td>'.$v.'</td>';
}
elseif($i=="2")
{
echo '<td>'.$v.'</td>';
}
elseif($i=="3")
{
echo '<td>'.$v.'</td></tr>';
$i=0;
}
}
echo "</table>";

как инвалид конечно, но зато работает %)
 

Serguitar

Новичок->продвинутый
syst3m
О господи. Валерьянки!;-)
Ничего, научишься. Попробуй выкинуть лишнее из кода.
 

syst3m

Новичок
%))))

даже не представляю что можно выкинуть...разве что скобки фигурные %)
 

Кром

Новичок
Давай поправим твой код. Введем переменную $col - кол. столбцов. И применим деление по остатку - %
Получится:

PHP:
$col = 3;
$i = 0;
echo "<table border=1><tr>";
foreach($array as $v)
{
	if (!($i % $col) && (0 != $i)) echo '<tr>';	
	$i++;
	echo '<td>'.$v.'</td>';	
	if (!($i % $col)) echo '</tr>';	
}
echo "</tr></table>";
Посмотри теперь что получилось и что еще осталось сделать.
 

GeT

Новичок
syst3m
PHP:
define("COLS_IN_ROW",3);

foreach($array as $key=>$v) {
if (($key % COLS_IN_ROW) == 0) echo "<tr>";
echo "<td>".$v."</td>";
if (($key % COLS_IN_ROW) == COLS_IN_ROW-1) echo "</tr>";
}
Вроде так. Пашет для любого количества колонок.
 

GeT

Новичок
Меньше чего? Строк в программе или символов? :D
Или все-таки операторов и вызовов функций?
 
Сверху