0

继续阅读,在scandir()显示任何内容时遇到问题。

<?php
    $dir = 'http://www.universaldynamicmedia.com/sandbox/Images';
    $array = scandir($dir);
    foreach($array as $key => $value)
        {
            echo '<li><img src="' . $dir . $value . '" /></li>';
        }
?>

我想我没有对目录做正确的scandir()事情,就像其他事情一样,我以前做过,而且效果很好。

目录权限会导致问题吗?

4

2 回答 2

3

** 请注意,您不能使用 URL,您必须有权访问文件夹/文件

扫描目录():

$dir = "PATH_TO_DIRECTORY";
$exclude = array( ".","..","error_log","_notes" );
if (is_dir($dir)) {
    $files = scandir($dir);
    foreach($files as $file){
        if(!in_array($file,$exclude)){
            echo '<li><img src="' . $dir . $file . '" /></li>';
        }
    }
}

读取目录():

$dir = "PATH_TO_DIRECTORY";
$exclude = array( ".","..","error_log","_notes" );
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh)) !== false) {
            if(!in_array($file,$exclude))
                 echo '<li><img src="' . $dir . $file . '" /></li>';
        }
        closedir($dh);
    }
}?>
于 2012-11-30T18:09:05.033 回答
2

scandir()仅适用于本地文件系统,您需要将其更改为:

$dir = '/path/to/document/root/sandbox/Images';
于 2012-11-30T18:07:30.150 回答