有没有办法在PHP代码之前执行搜索和替换 它被PHP引擎解释?
所需时间表:
<?php echo("hello"); ?>
。hello
→good bye
<?php echo("good bye"); ?>
。good bye
)。可以使用ob_start
甚至mod_substitute
作为Apache的输出过滤器来操作PHP引擎的输出。但是,是否可以操作PHP引擎的输入(PHP代码,请求等)?
修改
我正在使用数千个PHP文件,我不希望它们被修改。我想在这些文件中将host1
替换为host2
,因为文件是从host1
复制的,必须在host2
上执行。实际上,对主机名进行了多次测试。
答案 0 :(得分:0)
请求不正常)
看起来很蠢。但如果你真的需要它试试这个..
例如,您需要在执行之前更改文件test.php
请尝试以下步骤(例如index.php
中):
1)打开test.php进行阅读并获取其内容
2)更换你想要的一切
3)将更改的文本保存为test2.php
4)包括test2.php
。
修改强>
为什么需要它更好?尝试使用variables 它会有所帮助)
答案 1 :(得分:0)
您可以使用php脚本打开.php
文件,进行必要的替换,然后include
该文件。
答案 2 :(得分:0)
您应该研究smarty等模板引擎以及各种形式的prefilters。
修改这样的代码并不是一个好主意,但要回答你的问题......你可以加载原始代码,预处理它并存储在新文件中:
$contents = file_get_contents( 'original.php');
// ...
file_put_contents( 'new.php', $contents);
include( 'new.php')
但我没有看到任何有效的使用......
你也可以使用eval()
,但每次你这样做时,小猫都会死掉(不是真的,这是危险的功能,而且它只有一些有效用途)。