Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: foreach и все онем
 
 автор: JG-loc   (31.03.2006 в 17:55)   письмо автору
 
 

Есть массив.
Я хочу элементы этого массива вывести в таблицу, в два столбика. Не ключь значение, а
значение1 | значение2
значение3 | значение4
и т.д.
Можно ли это сделать обходом foreach?
Через for не проблема, это я могу, но надо через foreach.
Заранее благодарен.

   
 
 автор: XPraptor   (31.03.2006 в 18:07)   письмо автору
 
   для: JG-loc   (31.03.2006 в 17:55)
 

Если четные (или счетчик введи 1,2 1,2 ...) то конец строки, нечетные конец столбца.

   
 
 автор: JG-loc   (31.03.2006 в 18:10)   письмо автору
 
   для: XPraptor   (31.03.2006 в 18:07)
 

Это понятно. Но как к форич привентить счетчик?

   
 
 автор: Trianon   (31.03.2006 в 18:15)   письмо автору
 
   для: JG-loc   (31.03.2006 в 18:10)
 


$i = 0;
foreach($array as $val)
{
echo $i;
...............

++$i;
}

   
 
 автор: XPraptor   (31.03.2006 в 18:16)   письмо автору
 
   для: JG-loc   (31.03.2006 в 18:10)
 

$i=1;
foreach(чтото as $val){

if($i==1){
print "<tr><td>" . $val . "</td>";
$i=2;
}else{
print "<td>" . $val . "</td></tr>";
$i=1;
}
}

   
 
 автор: JG-loc   (31.03.2006 в 18:30)   письмо автору
 
   для: XPraptor   (31.03.2006 в 18:16)
 

Да. Спасибо. Очень помогли :) Работает :)

   
 
 автор: XPraptor   (31.03.2006 в 18:38)   письмо автору
 
   для: JG-loc   (31.03.2006 в 18:30)
 

Да, после окончания цикла, может случится, что закончились значения на нечетном и строка не закроется.
Поэтому добавь еще код после кода цикла:
if($i==2)print "<td></td></tr>";

   
 
 автор: Loki   (31.03.2006 в 20:07)   письмо автору
 
   для: XPraptor   (31.03.2006 в 18:16)
 

Предлагаю вариант изящнее:)
<?
$i
=false;
foreach(
чтото as $val){
 if(
$i){
  print 
"<tr><td>" $val "</td>";
 }else{
  print 
"<td>" $val "</td></tr>";
}
$i=!$i;
}
if (!
$i) print "<td>" $val "</td></tr>"//если цикл закончился нечетным

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования