php - 包含目录中的 all/javascript/*.js

标签 php javascript include

谁能告诉我在目录中包含一组文件的最佳实践吗?

例如,如果我有一个/javascript 目录,其中有 10 个 javascript 文件,我将如何加载整个目录?

这个问题现在没有实际意义,但供将来引用;

我使用以下命令以相同的方式读取文件:

<?php
    session_start();

    // Auto import all js files in the directory.

            $files = glob("*.js");
            sort($files);                   

            $jsFiles = array();
            for($i = 0; $i < count($files); $i++){
                error_log('Auto-Opening: '.$files[$i]);
                $tempString = file_get_contents($files[$i]);
                //error_log('Auto-Opened Content: '.$tempString);
                array_push($jsFiles, $tempString);
            }
?>

抱歉,我想这需要澄清:

我包含的代码用于我的项目的完全独立的部分,它包含 javascript 文件目录的原始字符串格式,用于我的处理目的。你不必担心我为什么这样做。

可以使用它来添加script标签,并回显这些文件,但我正在寻找一种更快更优雅的方式来包含目录。与上面的代码不同(我的代码永远不会执行其 javascript。我只是从文件中创建字符串并将其发送到 JS 进行解析)。

另请注意,按照建议:

$files = glob("{directory/*.js}",GLOB_BRACE);
                for($i = 0; $i < count($files); $i++){
                    include($files[$i]);
                }

除了将这些文件回显到屏幕上之外什么也不做,不带 script 标签。

最佳答案

我会简单地对文件调用include(),而不是执行file_get_contents()。这有两个主要原因/好处:

  • 在输出文件之前,您不会将文件加载到内存中(无论如何在 PHP 中)。这节省了服务器资源(尽管数量相当少)。
  • 您可以将 PHP 代码放入 JS/CSS 等中并对其进行评估。这意味着您可以在服务器端预定义 JS 变量、将颜色主题应用于 CSS 以及通过 PHP 非常简单地执行许多其他操作。

关于php - 包含目录中的 all/javascript/*.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7445496/

相关文章:

c++ - 通过 Visual C++ 中的命令选项将头文件包含到项目中的每个 .h 文件中?

c++ - CMake 和绝对标题路径

php - 将数据库条目与表单进行比较

php - 如何格式化(转换)laravel 数据库分页结果?

php - 以 symfony 形式添加链接

javascript 包括 math.js

php - 数据库存储与 Cookies - 存储表单数据

javascript - 将对象数组过滤为新数组

javascript - 如何在 Angular 12 中动态加载组件

javascript - AngularJS 在 URL 正下方显示列表