2

我对 PHP 很陌生,我不想在这里问任何东西,直到我绝对找不到办法做到这一点。

我有一种情况,我想使用 PHP 从目录中读取和显示图像,但我希望读取的第一个图像被唯一地回显

我当前的代码如下:

$imageDir = "img/landMarks/carousel/";
$images = glob($imageDir.'*.jpg');
foreach ($images as $image){
echo '<div class="item">'."\r\n\t\t";
echo '<img src="'.$image.'" alt=""></div>'."\r\n\t";}

只是一个简单的目录拉取和格式化回显。

这将用于 BootStrap 轮播,不幸的是,必须有第一个图像,<div class="item active">否则整个事情都会失败。

所以重申一下,拉出的第一个图像需要是<div class="item active">,而其余的需要是<div class="item">

我想我经历了一整包香烟,为此绞尽脑汁。

4

2 回答 2

2

为此使用标志。希望有所帮助。(-:

$imageDir = "img/landMarks/carousel/";
$images = glob($imageDir.'*.jpg');
$flag=1;
foreach ($images as $image){
echo '<div class="item' .($flag?' active':''). '">'.PHP_EOL."\t\t";
echo '<img src="'.$image.'" alt=""></div>'.PHP_EOL."\t";
$flag=0;
}
于 2013-05-17T16:18:18.377 回答
1

如何使用 for 循环而不是 foreach 循环。当 index == 0 时,您可以将“活动”添加到您的 div 类。

注意 我没有运行这段代码——但它应该给你正确的想法。

$imageDir = "img/landMarks/carousel/";
$images = glob($imageDir.'*.jpg');
for($i = 0; $i < count($images); $i++){
       //If the index is 0, it's the first image.
       $class = ($i == 0) ? 'item active' : 'item';

       //Dynamically change your div's class
       echo "<div class='$class'>\r\n\t\t";
       echo '<img src="'.$images[$i].'" alt=""></div>'."\r\n\t";
}
于 2013-05-17T16:17:55.140 回答