PHP(或PYTHON)将所有包含的文件合并到一个大文件中(递归?)

标签 php python recursion

我有一个使用包含的 PHP 脚本。包含的文件也有自己的包含。
所有文件都在网络服务器上的同一个文件夹中。我想要一个单独的 PHP 脚本来合并所有这些
到单个 PHP 文件中。我会为新脚本提供文件以开始处理(例如上面的 index.php)。
如何使用 PHP 做到这一点?例如说我有这些文件:

---------------------
index.php
<?php

*other code1*
include 'header.php';
*other code2*

?>

----------------------
header.php
<?php

*other code3*
include 'subheader.php';
*other code4*

?>


----------------------
subheader.php
<?php

*other code5*

?>


The result of the script begining from the index.php would be:

merged_file.php
<?php

*other code1*
    *other code3*
        *other code5*
    *other code4*
*other code2*

?>

即代码将全部位于一个大文件中,并以与以前完全相同的顺序执行。

所以基本上它会遍历脚本,每次找到一个包含时,它都会用给定包含文件中的相关 PHP 代码替换包含,并且它将替换该包含中任何包含的代码,直到所有代码都合并到一个单一的文件(递归函数?)

注意:我想要在文件中返回未解析的 PHP 代码。

提前致谢

编辑:我理解模块化代码通常更好的做法,但这不是我的问题。我在问我怎么能做到这一点?不是模块化vs的好处
非模块化代码。

最佳答案

我认为这可以解决您的问题 phpcompiler.org

phc 最初支持 PHP 的 include 内置的编译时处理。启用此功能会在 AST 中插入包含的语句来代替 include 语句。包含的函数、类和接口(interface)成为文件顶级范围的一部分。如果 phc 无法处理包含语句(例如,如果找不到文件),则会发出警告,并保留包含语句。

关于PHP(或PYTHON)将所有包含的文件合并到一个大文件中(递归?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9081908/

相关文章:

python - lxml xpath - 获取span标签内的所有文本

Python OpenCV 添加的文本质量不佳

Javascript - 为什么下面的函数定义出错?

php - 组合两个 SQL 查询 PHP

python - 为什么我无法连接到 django 服务器?

ruby - Chris Pine Ruby 第 10 章,递归

python - 如何在 Python 中动态构建树

PHP 三元运算符不适用于此代码

php - 正则表达式忽略括号中的分隔符

php - 如何远程向 Moodle 中的现有用户添加类(class)?