有没有办法从目录中提取图像并将它们放在网页上并附加到这些图像的链接,这些链接会将人带到使用PHP与该图像关联的特定网页?
由于
答案 0 :(得分:0)
<?php
$directory = "imageDirectory"; // assuming that imageDirectory is in the same folder as the script/page executing the script
$contents = scandir($directory);
if ($contents) {
foreach($contents as $key => $value) {
if ($value == "." || $value == "..") {
unset($key);
}
}
}
echo "<ul>";
foreach($contents as $k => $v) {
echo "<li><a href=\"$directory/" . $v . "\">link text</a></li>";
}
echo "</ul>";
?>
这应该可行,但foreach()
可能是计算上昂贵的。我确信必须有更好/更经济的方法来删除第一个.
..
和foreach()
的相对文件路径
答案 1 :(得分:0)
这样的事情应该这样做:
if ($handle = opendir('/path/to/files')) {
echo "Directory handle: $handle\n";
echo "Files:\n";
/* This is the correct way to loop over the directory. */
while (false !== ($file = readdir($handle))) {
if(substr($file, -3) == 'jpg'){ //modify to handle filetypes you want
echo "<a href='/path/to/files/".$file."'>".$file."</a>";
}
}
closedir($handle);
}
答案 2 :(得分:0)
您是在询问如何扫描目录或如何将图像列表与网址相关联?
第一个问题的答案是glob()函数
第二个答案是使用一个关联数组
$list = array('foo.gif' => 'bar.php', 'blah.gif' => 'quux.php');
和foreach循环输出图像和链接
foreach($list as $src => $href) echo "<a href='$href'><img src='$src'></a>";
答案 3 :(得分:0)
@ricebowl:
使用PHP版本5.2.9 / apache 2.0 / windows vista - 我收到了Parse错误。
无论如何,有工作解决方案:
$dir = "./imageDirectory";
$ext = array('.jpg','.png','.gif');
$dh = opendir($dir);
while (false !== ($filename = readdir($dh))) {
print '<ul>';
if(strpos($filename, '.') > 3)
{
print '<li><a href="'.$dir.'/'.$filename.'">'.str_replace($ext, '', $filename).'</a></li>';
}
print '</ul>';
}