我在下面有这个PHP代码,我想在一些帮助下稍微调整一下。
我需要根据指向特定文件夹的URL(使用表达式引擎)生成图像列表。
目前这段代码工作得很好,但我还需要做两件事...
如果文件夹找不到,请向上移动... 例如,如果它找不到目录/子目录,它将关闭并在目录中搜索。(这显然需要在某个级别停止)
生成文件夹中所有图像的列表,而不仅仅是下面的图像。
<?php
$bgimagearray = array();
$iterator = new DirectoryIterator("sites/domain.co.uk/public_html/assets/images/bg-images/{last_segment}");
foreach ($iterator as $fileinfo) {
if ($fileinfo->isFile() && !preg_match('/-c\.jpg$/', $fileinfo->getFilename())) {
$bgimagearray[] = "'" . $fileinfo->getFilename() . "'";
}
}
$bgimage = array_rand($bgimagearray);
?>
<div id="backgroundImage">
<img src="{site_url}assets/images/bg-images/{last_segment}/<?php echo trim($bgimagearray[$bgimage], "'"); ?>" alt="{last_segment}" />
</div>
答案 0 :(得分:0)
关于第一个问题,您可以使用dirname php function。对于另一个问题,即获取所有文件而不是一个文件,您已经在$bgimagearray
中拥有整个数组,因此您可以使用foreach进行迭代。