我目前正在使用以下代码返回显示文件夹中所有图片的页面:
echo''; $array=glob('ebayimg/9150gba041117/size_2/*');
foreach($array as $zf)
echo '<img src="http://www.gbamedical.com/'.$zf.'">’;
我需要能够执行类似下面的代码,除了代码中每个图片需要出现两次,我需要动态添加单词“image1,image2等”,因为那里有很多图片在文件夹中。 。 。 。如下所示。下面的例子只显示了两张图片,但我需要它来返回代码,因为文件夹中有很多图片。
<div class="slider">
<input type="radio" name="slide" id="image1" checked/>
<label for="image1">
<img src="http://www.gbamedical.com/ebayimg/9150gba041117/size_2/IMG_9633.JPG"/>
</label>
<img src="http://www.gbamedical.com/ebayimg/9150gba041117/size_2/IMG_9633.JPG" height="480"/>
<input type="radio" name="slide" id="image2"/>
<label for="image2">
<img src="http://www.gbamedical.com/ebayimg/9150gba041117/size_2/IMG_9638.JPG"/>
</label>
<img src="http://www.gbamedical.com/ebayimg/9150gba041117/size_2/IMG_9638.JPG" height="480"/>
</div>
答案 0 :(得分:0)
由于glob()会返回基于数字的数组,因此请使用 $ key =&gt; $ value foreach的语法。那样$index
将对应于索引(0 - 最后一个索引)。此外,checked可以有条件地包含在字符串中。请参阅下面的示例。
foreach($array as $index => $zf)
$checked = ''; //not checked
if (!$index) { // equal to 0, for first item
$checked = 'checked';
}
echo '<input type="radio" name="slide" id="image'.($index+1).'" '.$checked.'/>'.
'<label for="image'.($index+1).'">'.
'<img src="http://www.gbamedical.com/'.$zf.'" />'.
'</label>'.
'<img src="http://www.gbamedical.com/'.$zf.'" height="480" />';
}
答案 1 :(得分:0)
你可以这样做:
<?php
$array = glob('ebayimg/9150gba041117/size_2/*');
$i = 1;
foreach($array as $image) {
?>
<input type="radio" name="slide" id="image<?php echo $i ?>" <?php if($i == 1){ ?> checked <?php } ?>/>
<label for="image<?php echo $i ?>">
<img src="http://www.gbamedical.com/<?php echo $image ?>"/>
</label>
<img src="http://www.gbamedical.com/<?php echo $image ?>"/>
<?php
$i++;
}
?>