PHP循环问题

时间:2011-04-08 15:11:58

标签: php loops

在我的网站上,我有数百行代码:

<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++

}

5 个答案:

答案 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以使其更具可读性

,那就更好了