所以,我有一个问题,因为我有 67 张(并且还在不断增加)图像都命名为 IMAGE01.jpg,IMAGE02.jpg一直到 IMAGE67.jpg。
在我的 HTML 页面中,我有此代码来显示图像。
<article class="thumb">
<a href="images/fulls/image01.jpg" class="image"><img src="images/thumbs/image01.jpg" alt="" /></a>
</article>
所以,我有67张图片。有没有办法使用 PHP 增加图像数量?所以我可以复制并粘贴那段代码来表示我拥有的图像数量?
这是拥有解决方案的第一部分。但是,有没有办法不必为每个图像重复该代码?是否可以使用 PHP 来定义我希望重复的次数?
因此,将代码片段一次,并有一些东西可以重复定义的次数,以便当我添加到集合中时,我所要做的就是更改重复次数?
提前非常感谢您的帮助。意味着分配。
<?php
for($i=1; $i<=67; $i++) {
?>
<article class="thumb">
<a href="images/fulls/image<?php
if($i<9)
echo "0".$i;
else
echo $i;
?>.jpg" class="image"><img src="images/thumbs/image<?php
if($i<9)
echo "0".$i;
else
echo $i;
?>.jpg" alt="" /></a>
</article>
<?php
}
?>
要制作您想要的内容,您需要使用从 1 到 67 的 for 循环(因为您的图像名称从 1 到 67)。对于每次迭代,您都必须回显 html 字符串。
像这样的例子:
for($i = 1; $i<=67; $i++){
$name = $i<10?"0".$i:$i;
echo "<article class='thumb'>
<a href='images/fulls/image".$name.".jpg' class='image'>
<img src='images/thumbs/image".$name.".jpg' alt=''/>
</a>
</article>";
}
如果名称之前需要有 0,则需要构造名称 (01, 02 ...)。这就是我在这里做的:$name = $i<10?"0".$i:$i;
。这意味着如果$i <10,那么我们在名称$i之前添加一个"0"。
你也可以使用 while 循环:
$i = 1;
while($i<=67){
$name = $i<10?"0".$i:$i;
echo "<article class='thumb'>
<a href='images/fulls/image".$name.".jpg' class='image'>
<img src='images/thumbs/image".$name.".jpg' alt=''/>
</a>
</article>";
$i++;
}
这是同样的想法。
希望对您有所帮助。
您可以使用
PHP变量并将其注入到HTML中。以下代码将从 1 到 67 计数。
<?php
$count = 1;
while($count <= 67){
?>
<p>Count: <?php echo $count; ?></p>
<?php
$count +=1;
}
?>
因此,您可以这样使用它:
<article class="thumb">
<?php
$count = 1;
while($count <= $numOfImages){
?>
<a href="images/fulls/image<?php echo $count; ?>.jpg" class="image"><img src="images/thumbs/image<?php echo $count; ?>.jpg" alt="" /></a>
<?php
$count +=1;
}
?>
</article>
只需将$numOfImages
设置为有多少图像,它应该可以工作。
You can try this sample code below if images are one after the other. Using single for loop with printf inside echo...
<body>
<?php
for ($i = 0; $i < 67; $i++) {
?>
<article class="thumb">
<a href="images/full/image<?php printf("%02d'n", $i)?>.jpg" ><img src="images/thumb/image<?php printf("%02d'n", $i)?>.png" alt="" /></a>
</article>
<?php
}
?>
</body>
Here is the sample output I kept only one image for testing. https://i.stack.imgur.com/l1Lo5.png