我的图片库有一个xhtml如下:
<div class="row">
<ul class="ul">
<li><a href="#"><img src=....></a></li>
<li><a href="#"><img src=....></a></li>
<li><a href="#"><img src=....></a></li>
</ul>
</div>
<div class="row">
<ul class="ul">
<li><a href="#"><img src=....></a></li>
<li><a href="#"><img src=....></a></li>
<li><a href="#"><img src=....></a></li>
</ul>
</div>
我想这样做:在<li>
中仅插入3 <ul>
并关闭3 <li>
之后
做这个的最好方式是什么?位置($ pos = 0,$ pos ++),array_chunk或其他什么?
提前致谢
答案 0 :(得分:1)
您必须准备一系列数据
我们准备它的方式并不重要。
您可以使用$ pos ++并在数据数组中设置列标记。
然后在模板中输出如下:
<? foreach ($DATA as $row): ?>
<? if($row['ul']): ?>
<div class="row">
<ul class="ul">
<? endif ?>
<li><a href="<?=$row['url']?>"><img src="<?=$row['src']?>"></a></li>
<? if($row['/ul']): ?>
</ul>
</div>
<? endif ?>
或者您可以使用array_chunk然后使用嵌套的foreaches:
<? foreach ($DATA as $arr): ?>
<div class="row">
<ul class="ul">
<? foreach ($arr as $row): ?>
<li><a href="<?=$row['url']?>"><img src="<?=$row['src']?>"></a></li>
<? endforeach ?>
</ul>
</div>
<? endforeach ?>
后者看起来很整洁,我不得不承认
答案 1 :(得分:0)
你可以做到
for ($i=0 ; $i < 5; $i++){
echo '<div class="row">
<ul class="ul">';
for ($j=0;$j<3;$j++){
echo '<li><a href="#"><img src=....></a></li>';
}
echo '</ul>
</div>';
}