3

当目录路径中有空间时,以下功能不起作用。例如,在以下路径中,目录名称为“Stack Overflow_files”,其中包含一个空格。

 $dir = '/home/mamun/workspace/barj/barj/barj/Sequence/Stack Overflow_files';
 $scanned_directory =  array_diff(scandir($dir, 0), array('..', '.'))

或者

$dh  = opendir($dir);
while (false !== ($filename = readdir($dh))) {
         $scanned_directory[] = $filename;
}

我可以从运行ls '$dir'的终端找到解决方案。但是php中有什么方法可以获取目录列表吗?

4

5 回答 5

1

替代解决方案

 $URL = str_replace("\ ","%20","../pasta1/pasta com espaco/pasta2");<br>
 $arquivos = scandir($URL);

<br>

 echo $arquiovos[0];<br>
 echo $arquiovos[1];<br>
于 2016-10-19T12:47:06.027 回答
0

尝试用反斜杠转义空格-

$dir = '/home/mamun/workspace/barj/barj/barj/Sequence/Stack\ Overflow_files';
于 2012-04-12T08:56:11.143 回答
0

试试 urlencoding。目录路径可能像

         $dir = '/home/mamun/workspace/barj/barj/barj/Sequence/Stack%20Overflow_files';
于 2012-04-12T09:16:56.090 回答
0

尝试

$dir = urlencode('/home/mamun/workspace/barj/barj/barj/Sequence/Stack Overflow_files');
于 2012-04-12T09:20:16.173 回答
0

兄弟,这是最终的解决方案

$path="/var/www/images";
$dir="带空格的文件夹";
$files=scandir("${path}/${dir}");

和宾果游戏

于 2015-01-28T15:44:06.110 回答