0

我想制作一个小脚本,但我在 php 中比较n00b,所以如果可以的话请帮助我:)

我想要脚本做的是:

  1. 我有“index.php”。
  2. 我希望“index.php”从已知文件夹中读取子目录,比如说“templates/”
  3. 每个子目录将包含一个名为“content.html”的文件。
  4. 然后,索引将使用 require() 函数为每个现有子目录加载“content.html”。

非常感谢您的帮助!

4

2 回答 2

4

RecursiveDirectoryIterator遍历指定目录和所有子目录,并将所有文件系统项作为SplFileInfo对象返回:

$iterator = new RecursiveIteratorIterator(
                new RecursiveDirectoryIterator($yourFilePath));

foreach($iterator as $file) {
    if($file->getFilename() === 'content.html') {
        $file->openFile()->fpassthru();
        // or 
        include $file->getRealpath();
    }
}

当您想通过 PHP 解析器运行 .html 文件时使用include,例如当它包含需要评估的 PHP 代码时。如果没有,请使用 fpassthru,因为这应该会快一点。也可以使用readfile($file->getRealpath())

于 2010-03-26T14:17:51.403 回答
-1

你想达到什么目的?

您想要 index.php 中不同文件的内容还是想要生成指向这些文件的链接?

因为如果你想聚合内容,这种方法是不够的,因为你会得到一个语法无效的 html 文件,因为你只是将 html 文件的内容连接起来。

您将需要对内容进行一些额外的解析以避免这种情况。

干杯,

达维特

于 2010-03-26T14:20:29.990 回答