我正在尝试使用php脚本显示当前目录中的所有图像。 显示图像的php文件也在同一目录中。 这是脚本
<?php
$dir =basename(__DIR__);
if (file_exists($dir) == false)
{
echo 'Directory \''. $dir. '\' not found!';
}
else{
$dir_contents = scandir($dir);
foreach ($dir_contents as $file)
{
$file_type = strtolower(end(explode('.', $file)));
if ($file !== '.' && $file !== '..' && in_array($file_type, $file_display) == true)
{
echo '<img src="'.$dir. '/'.$file. '" alt="'.$file. '" />'; } } }
?>
输出显示no目录存在。但我已经看到该目录存在。请告诉我我的代码有什么问题 谢谢
答案 0 :(得分:0)
我稍微重写了你的脚本。使用glob()
获取文件,使用pathinfo()
获取文件扩展名。
$files = glob(__DIR__.DIRECTORY_SEPARATOR.'*');
foreach ($files as $file) {
if (!is_file($file)) { // if isn't file, skip it
continue;
}
$info = pathinfo($file);
// check if allowed extensions
if (in_array(strtolower($info['extension']), array('jpg', 'png', 'gif'))) {
echo ...; // your image echo
}
}
如果所有图片都是jpg
$files = glob(__DIR__.DIRECTORY_SEPARATOR.'*.jpg');
然后跳过部分并检查扩展名。