我正在尝试显示从数据库获取的图像。所以,我需要打印的图像的模式是这样的。
行-1:3个图像
第2行:2个图像
第3行:4个图像
重复一遍。
我可以使用奇数和偶数条件以3-2-3的形式显示数据。
$id=$SITE['site_settings']->cloud_site_id;
$gal="SELECT gallery_id, gallery_image_url from `cloud_site_gallery_images` where `cloud_site_id`= $id and gallery_image_status=1;";
$res = $DB->query($gal);
<?php $count = 1;
$row_index=1;
if($row_index%2==1)
{
foreach($res as $gallery_image)
{ ?>
<li class="gal-row<?php echo $row_index; ?> gal-img gal<?php echo $gallery_index++; ?>"><a class="th" href="<?php echo WWW_GALLERY_IMAGE_PATH.'original/'.$gallery_image->gallery_image_url; ?>"><img src="<?php echo WWW_GALLERY_IMAGE_PATH.'original/'.$gallery_image->gallery_image_url; ?>"></a></li>
<?php
$count++;
if($count==3)
break;
}
$row_index++;
}我得到了第一行所需的结果。但是,我如何继续自动化第二行和更多行呢?
还可以有人请建议我如何才能通过打印剩余的图像。
发布于 2014-11-17 22:18:09
您可以使用以下逻辑来打印所需格式的结果。
行-1:3个图像
第2行:2个图像
第3行:4个图像
重复一遍。
| img1 | img2 | img3 |
| img4 | img5 |
| img6 | img7 | img8 | img9 |
$imgArray = array('1' => 'img1' ,
'2' => 'img2' ,
'3' => 'img3' ,
'4' => 'img4' ,
'5' => 'img5' ,
'6' => 'img6' ,
'7' => 'img7' ,
'8' => 'img8' ,
'9' => 'img9'
);
$temp = array();
$i=1;
$j=0;
$k=0;
foreach ($imgArray as $key => $value) {
if($i==4) {
var_dump($temp);
$temp = array();
$j=1;
$i=0;
}
if($j==3){
var_dump($temp);
$temp = array();
$k=1;
$i=0;
$j=0;
}
if($k==5){
var_dump($temp);
$temp = array();
$i=1;
$k=0;
$j=0;
}
if($i>0)
$i++;
if($j>0)
$j++;
if($k>0)
$k++;
$temp[$key] = $value;
}https://stackoverflow.com/questions/26973489
复制相似问题