如何将javascript文件递归链接到HTML
我有以下文件结构:如何将javascript文件递归链接到HTML,javascript,php,html,Javascript,Php,Html,我有以下文件结构: root - dir1 - js_dir - file.js - dir2 - inner_dir - header.php 目录js_dir包含我的javascript文件。我正在尝试递归地将它们添加到header.php中的标题中,如下所示: header.php <head> <?php $dir = '../../dir1'; $iterator = new Recursive
root - dir1 - js_dir - file.js
- dir2 - inner_dir - header.php
目录js_dir包含我的javascript文件。我正在尝试递归地将它们添加到header.php
中的标题中,如下所示:
header.php
<head>
<?php
$dir = '../../dir1';
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dir), RecursiveIteratorIterator::SELF_FIRST );
foreach ( $iterator as $path ) {
if ($path->isDir()) {
print('<div> DIR : ' . $path . PHP_EOL . "</div>");
} else {
$path_parts = pathinfo($path);
$file_parts = $path_parts['extension'];
if ($file_parts == "js")
{
$array = explode("/opt/lampp/htdocs", $path);
unset($array[0]);
echo $path = implode("/", $array);
print("<div>http://localhost$path" . PHP_EOL . "</div>");
echo("<script src='http://localhost/$path'></script>");
}
}
}
?>
</head>
我怎样才能开始工作呢
提前谢谢大家。应该是
。/../dir1
我可能会选择一些基于文件索引的解决方案,因为它更干净。抱歉@CodeGodie。这是我在缩短代码时犯的一个错误。dir1的绝对路径是什么?哦,根据你的分类,它是root的一个子目录。那么为什么要使用“../../dir1”而不是“../dir1”?问题在于相对路径会根据您当前所在的位置而变化。。如果您计划将header.php包含在其他地方,那么您可能会遇到这些问题,因为无论您将其包含在什么地方,都很可能不在同一条路径上。我会硬编码一个名为ROOT_DIR的constat,并给它根文件夹的绝对路径。然后,您可以使用它访问您的文件。
Fatal error: Uncaught UnexpectedValueException: RecursiveDirectoryIterator::__construct(../js): failed to open dir: No such file or directory in /opt/lampp/htdocs/root