[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как написать другой цикл?
Tornado
Как написать такую же конструкцию только с циклом while или for?


$mb = 1;

foreach ($imgs as $img => $value)
{
echo "<a href='$value' id='mb$mb' class='mb'><img src='$value' width='100' /></a><div class='multiBoxDesc mb1'> </div>\n";
$mb = $mb++;
}


Все работает так как надо, но валидатор ругается потому что id должен быть уникальным. А без счетчика не все работает
krasilich

//for
$imgsf = array_flip($imgs);
for($mb = 1; $mb <= count($imgsf); ++$mb)
echo "<a href='$imgsf[$mb-1]' id='mb$mb' class='mb'><img src='$imgsf[$mb-1]' width='100' /></a><div class='multiBoxDesc mb1'> </div>\n";



//while
$imgsf = reset(array_flip($imgs));
$mb = 1;
while(next($imgsf))
echo "<a href='$imgsf[$mb-1]' id='mb$mb++' class='mb'><img src='$imgsf[$mb-1]' width='100' /></a><div class='multiBoxDesc mb1'> </div>\n";

Winston
Может так ?
for ($i = 0; $i <= count($imgs); $i++)
{
echo "<a href='$imgs[$i]' id='mb'.$i class='mb'><img src='$imgs[$i]' width='100' /></a><div class='multiBoxDesc mb1'> </div>\n";
}
krasilich
А, ррр. Там значения или ключи нужны? Запутался...
krasilich
Первый вариант для ключей, этот для значений

//for
for($mb = 1; $mb <= count($imgs); ++$mb)
echo "<a href='".$imgs[$mb-1]."' id='mb".$mb."' class='mb'><img src='".$imgs[$mb-1]."' width='100' /></a><div class='multiBoxDesc mb1'> </div>\n";



//while
$imgs = reset($imgs);
$mb = 1;
while(next($imgs))
echo "<a href='".$imgs[$mb-1]."' id='mb$".mb++."' class='mb'><img src='".$imgs[$mb-1]."' width='100' /></a><div class='multiBoxDesc mb1'> </div>\n";
Tornado
Благодарю, очень помогли. Теперь все как надо! smile.gif
Быстрый ответ:

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