繁体   English   中英

使用 PHP 为目录中的所有 JavaScript 文件递归生成脚本标签

[英]Recursively generate script tags for all JavaScript files within a directory with PHP

我正在构建一个复杂的应用程序,其中包含许多子目录中的大量 JavaScript 文件。 我知道我想将它们全部包含在内(它不会影响性能),但我不想为每个手动创建脚本标记。 鉴于我的所有文件都是“/js”目录的子文件,我如何使用 PHP 为每个文件动态生成脚本标签? 像这样的东西:

// first somehow recursively get all .js files, then:
foreach($files as $file) {
  echo '<script src="' . $file->path . '"></script>';
}

在我看来,最优雅的方法是使用 SPL。

$dirIterator = new RecursiveDirectoryIterator("/path/to/js");
$iterator = new RecursiveIteratorIterator(
  $dirIterator,
  RecursiveIteratorIterator::SELF_FIRST
);

foreach ($iterator as $file) {
    if($file->getExtension() == 'js') {
      // You probably have to adjust the full path according to your DOC_ROOT
      $url = $file->getPathname();
      echo '<script src="' . $url . '"></script>';
    }
}

看看http://php.net/manual/en/class.splfileinfo.php看看你还能用$file做什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM