【问题标题】:Cannot get list of file on an external hard disk无法获取外部硬盘上的文件列表
【发布时间】:2017-06-08 18:55:00
【问题描述】:

我无法使用以下行获取文件和文件夹列表:

<?php
    $dir    = '/media/me/n4m3-0f-my-h4rd-d1sk';
    $files1 = scandir($dir);
    print_r(error_get_last());
    print_r($files1);

?>

我在这里遵循了第一个示例:https://secure.php.net/manual/en/function.scandir.php,并且此 sn-p 代码仅在目录为 /tmp 时才有效

我收到以下错误:

Array ( [type] => 2 [message] => scandir(): (errno 13): Permission denied [file] => /var/www/html/index.php [line] => 8 ) 

【问题讨论】:

  • files1 = scandir 之后添加它会显示什么:print_r(error_get_last());
  • @DaveS 如下:Array ([type] => 2 [message] => scandir(): (errno 13): Permission denied [file] => /var/www/html/index .php [行] => 8)

标签: php directory


【解决方案1】:

PHP 用户没有磁盘的读取权限。

要查看 PHP 设置的用户,可以添加以下行:

echo exec('whoami`);

要解决此问题,请授予该用户对驱动器的访问权限。这可能意味着至少向每个人授予读取权限。

【讨论】:

  • whoami 给了我以下结果:www-datachmod 777 /path/HD 足够了吗?
  • 我希望这能奏效。如果您只想阅读,则不需要写入权限
  • 不幸的是,以 sudo 执行的 chmod 777 无效。 scandir 仍然无法正常工作
猜你喜欢
  • 2011-09-03
  • 2019-05-02
  • 1970-01-01
  • 2021-07-29
  • 2011-05-04
  • 2014-01-22
  • 2011-01-14
  • 2012-02-06
  • 2018-09-09
相关资源
最近更新 更多