php - 一个带有 div 和多个 li 的 foreach 循环

标签 php html css foreach html-lists

是否可以使用单个 foreach 构造如下结构?循环?

+-------------+----------+
foreach
| div/div     | ul       |
|             |   li/li  |
|             |   li/li  |
|             |   li/li  |
|             | /ul      |
endforeach
+-------------+----------+

With code like this, I'm getting a wrong iteration of <ul> and <li>, as you can see in this front page just below the galleries (in Front Page, Business etc.).

$counter = 0;
foreach( $items as $news ){
if ( $counter == 1 ) { echo '<div class="align-left">News 1</div>'; }
if ( $counter != 1 && $counter <= 4 ) {
   echo '<div class="align-right">';
    echo '<ul>';
      echo '<li>' . news . '</li>';
    echo '</ul>';
   echo '</div>';
}
$counter++;
} //endforeach

* 请注意:我提供的链接不包括我在此问题中给出的类似外观,但我实际上需要逻辑。

编辑

我看到了一些对我的问题的误解。
请注意 $items包含来自查询的新闻,并带有 foreach我必须相应地放置它们。所以我实际上需要 foreach以及设计。如果我echo一个<div class="align-left">News 1</div>首先,然后调用 foreach循环,那么它就不可能了,因为我会错过第一个 news来自 $items .

最佳答案

试试这个。希望你想要这个。

$counter = 0;
$item_size = count($items);
if($item_size == 1 ){
    echo '<div class="align-left">'.$item[0].'</div>'; 
}else{
   echo '<div class="align-right">';
   echo '<ul>';
   foreach( $items as $news ){
     if ( $counter == 0 ) { echo '<div class="align-left">'.$news.'</div>'; }
     if ( $counter != 0 && $counter <= 4 ) {
         echo '<li>' . $news . '</li>';
     }
     $counter++;
   } //endforeach
   echo '</ul>';
   echo '</div>';
} 

关于php - 一个带有 div 和多个 li 的 foreach 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23990853/

相关文章:

PHP:getenv() 和 apache_getenv() 之间的区别

html - 在 Adob​​e Air 应用程序中设置表单元素的样式

php - 上传包含50000条记录的CSV文件并将数据插入MySQL

php - 调用 codeigniter 中数组的成员函数 result()

html - 对于商店列表品牌,最正确的微数据模式是什么?

javascript - 如何阻止 <a> 标签跳转到 href 属性指定的目标?

javascript - 如何使用 jquery 或 javascript 搜索表中的多列

html - 如何消除所有设备上输入文本和按钮之间的差距?

html - 使用 Chrome 检查响应式样式

php - 检索 MySQL 值并打印它们