当路径在PHP中包含空格时,scandir或opendir不起作用

时间:2012-04-12 08:53:28

标签: php directory space

当目录路径中有空间时,以下功能不起作用。例如,在以下路径中,目录名称为“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中获取目录列表?

5 个答案:

答案 0 :(得分:1)

替代解决方案

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

<br>

 echo $arquiovos[0];<br>
 echo $arquiovos[1];<br>

答案 1 :(得分:0)

尝试使用反斜杠 -

来逃避空间
$dir = '/home/mamun/workspace/barj/barj/barj/Sequence/Stack\ Overflow_files';

答案 2 :(得分:0)

尝试使用urlencoding。目录路径 可能就像

         $dir = '/home/mamun/workspace/barj/barj/barj/Sequence/Stack%20Overflow_files';

答案 3 :(得分:0)

尝试

$dir = urlencode('/home/mamun/workspace/barj/barj/barj/Sequence/Stack Overflow_files');

答案 4 :(得分:0)

这是最终的解决方案

$路径= “/无功/网络/图像”;
$ dir =“带空格的文件夹”;
$文件= SCANDIR( “$ {路径} / $ {DIR}”);

宾果游戏