在我的网站上,我有数百行代码:
<a href="highslide/images/large/08/02IMG_0012.jpg" class="highslide"
onclick="return hs.expand(this, config1 )">
</a>
<a href="highslide/images/large/08/03IMG_0020.jpg" class="highslide"
onclick="return hs.expand(this, config1 )">
</a>
<a href="highslide/images/large/08/04IMG_0019.jpg" class="highslide"
onclick="return hs.expand(this, config1 )">
</a>
<a href="highslide/images/large/08/05IMG_0011.jpg" class="highslide"
onclick="return hs.expand(this, config1 )">
</a>
我想知道是否有可能使用PHP来保存我有这么多行代码。使用批量重命名器将照片文件名更改为photo1.jpg,photo2.jpg等很容易。我只是不确定如何实现PHP因为我有点像菜鸟。到目前为止我得到了这样的somin:
$photo = 1;
$ext = .jpg;
while() {
echo '<a href="highslide/images/large/08/'.$photo.$ext.'" class="highslide" onclick="return hs.expand(this, config1 )">';
$photo++
}
答案 0 :(得分:2)
你几乎就在那里,你只需要在while循环中添加一个退出条件。 当循环必须结束?当它打印完所有照片。因此,只需添加一个包含照片数量的变量并检查while条件:
$photo = 1;
$ext = '.jpg';
$numberOfPhotos = 100;
while($photo <= $numberOfPhotos) {
echo '<a href="highslide/images/large/08/'.$photo.$ext.'" class="highslide" onclick="return hs.expand(this, config1 )">';
$photo++;
}
答案 1 :(得分:2)
严重缩写代码:
$pics = array("001","002",etc..);
foreach ($pics as $pic)
{
echo '<a...' . $pic . '..>';
}
这应该表明所涉及的原则;使其适应您的需求。
答案 2 :(得分:1)
虽然“while”循环会执行此操作,但“for”循环更适合于顺序迭代。
$photoCount = 10;
$ext = .jpg;
for ($i = 1; $i <= $photoCount; $i++) {
echo '<a href="highslide/images/large/08/'.$i.$ext.'" class="highslide" onclick="return hs.expand(this, config1 )">';
}
答案 3 :(得分:0)
您使用的结构几乎是正确的。您只需添加一种方法来停止使用的while()循环。 while循环将循环,直到其括号内的条件为false。 就像达维德那样。他使用最大数字来阻止循环。
答案 4 :(得分:0)
<?php
$total_photo = 20; // set total number of photo
$photo_url = "highslide/images/large/08/photo"; // set the default photo url
$photo_ext = ".jpg";
for($i = 1; $i <= $total_photo; $i++):
?>
<a href="<?php echo $photo_url . $i . $photo_ext; ?>" class="highslide" onclick="return hs.expand(this, config1 )">
Photo <?php echo $i; ?>
</a>
<?php endfor; ?>
如果你只是将PHP代码内联到html以使其更具可读性
,那就更好了