Php 如何正确循环这些图片
我确信这是PHP的一个简单原理,但这是一个我还没有学会的原理。原则上,该准则适用于:Php 如何正确循环这些图片,php,foreach,joomla3.0,Php,Foreach,Joomla3.0,我确信这是PHP的一个简单原理,但这是一个我还没有学会的原理。原则上,该准则适用于: <?php for($i=0;$i<count($photos);$i++){ if($photos[$i]->image != ""){ if(JPATH_ROOT.'/images/'.$row->id.'/medium/'.$photos[$i]->image){ if(!$photocount)
<?php
for($i=0;$i<count($photos);$i++){
if($photos[$i]->image != ""){
if(JPATH_ROOT.'/images/'.$row->id.'/medium/'.$photos[$i]->image){
if(!$photocount) {
$photocount = $photocount + 1;
$photoclass = "property_photo_main property_photo_main_" . $photocount; // First Photo Class
}
?>
<img src="<?php echo JURI::root()?>images<?php echo $row->id;?>/medium/<?php echo $photos[$i]->image?>" class="<?php echo $photoclass; ?>" alt="<?php echo $photos[$i]->image_desc;?>" title="<?php echo $photos[$i]->image_desc;?>"/>
<?php
}
}
}
?>
图像/媒体/“class=”“alt=”“title=”“/>
这样可以正确输出图像,但是“照片计数”不会增加,因此每张照片都会获得“第一张照片类”(property_Photo_main_1)。我完全理解这里的问题是因为计数不在打印每张照片的循环内,而是在图像输出之前,循环在哪里,我如何实现计数的增加
HTML输出为:
<img src="http://msa.eighttwentydesign.com/images/osproperty/properties/5/medium/51384100282240dc03c72cb44ce05eb9e56021d0c05.jpg" class="property_photo_main property_photo_main_1" alt="" title=""/>
<img src="http://msa.eighttwentydesign.com/images/osproperty/properties/5/medium/51384100283f9f748ca556070c2d09553298dc26d8f.jpg" class="property_photo_main property_photo_main_1" alt="" title=""/>
<img src="http://msa.eighttwentydesign.com/images/osproperty/properties/5/medium/51384100283b280e25f329d8cf1518bda4700b07765.jpg" class="property_photo_main property_photo_main_1" alt="" title=""/>
<img src="http://msa.eighttwentydesign.com/images/osproperty/properties/5/medium/51384100283c801f9afb73308c7fd77a77ea00129bb.jpg" class="property_photo_main property_photo_main_1" alt="" title=""/>
</div>
您永远不会在if之外增加
$photocount
。此外,您也永远不会重置$photoclass
foreach ($photos as $photo) {
if (!empty($photo->image)) {
if (JPATH_ROOT.'/images/'.$row->id.'/medium/'.$photo->image) {
if (!isSet($photocount))
$photocount = 1;
else
$photocount++;
$photoclass = "property_photo_main property_photo_main_" . $photocount;
//HTML...
}
}
}
这样,$photoclass
在每次迭代中都会重置,如果设置了,$photocount
也会增加1。我还随意使用了PHP的内部结构,如或,您可以在手册中阅读有关用法的内容
由于JPATH\u ROOT./images/'.$row->id./medium/'.$photo->image
没有逻辑且不为null/false,因此它将始终返回true,可能您想使用类似于
使用
!$photoclass
而不是!isSet($photoclass)
将抛出一个未定义的变量通知。谢谢,综合答案+1