如何使用php扫描目录以建立到pdfs的链接?

Cra*_*893 1 php file

我是PHP的新手,但我想做的是为我的一些公司的工作提供动态的目录.

因此,如果我将作业描述的所有pdf放在名为../jobops的文件夹中,并且php文件位于根目录中,我需要做什么.

Dav*_*mas 5

<?php
  $directory = "/jobops";
  $contents = scandir($directory);
    if ($contents) {
       foreach($contents as $key => $value) {
             if ($value == "." || $value == "..") {
                unset($key);
             }
       }
    }
        echo "<ul>";
    foreach($contents as $k => $v) {
      echo "<li><a href=\"$directory/" . $v . "\">link text</a></li>";
    }
        echo "</ul>";

?>
Run Code Online (Sandbox Code Playgroud)

应该管用.获取目录,扫描它,将所有文件名映射到数组中$contents删除相对URL("."和"..")然后回显它们.

但请记住,这foreach是相对昂贵的; 所以你可能希望简单地取消$contents[0]$contents[1].


编辑以回应以下(来自OP):

警告:scandir(www.markonsolutions.com/jobops)[function.scandir]:无法打开目录:第5行/home/content/t/i/m/timhish/html/test.php中没有此类文件或目录警告:scandir()[function.scandir] :(错误2):/home/content/t/i/m/timhish/h/i/s/h/html/test.php上没有这样的文件或目录5警告:在第15行的/home/content/t/i/m/timhish/html/test.php中为foreach()提供的参数无效

我从"/ jobops"改变了ti认为它是一个相对目录的东西,但显然不是它.我也不确定/ home/content .......事情是什么,但我现在主持的去爸爸也许这就是他们如何存储东西?

$directory变量与调用脚本的位置有关.在我的情况下,这是从根文件夹运行所以它应该是,$directory = "jobops"假设文件夹和脚本存储在同一个地方.在不知道服务器的目录结构的情况下,我无法真正帮助您,但我建议排除该scandir()功能的问题.

要做到这一点,在脚本所在的目录中创建一个文件夹,无论你喜欢什么,用至少一个图像填充它(以便以下内容if()不会取消整个数组),看看是否有效.如果确实如此,那么您将无法找到文件夹的相对路径.如果没有,那么我就会陷入困境.