自修改PHP脚本

时间:2009-12-30 01:04:12

标签: php self-modifying

我正在尝试修改像这个准系统示例

这样结构化的PHP脚本的一部分
<-- part A -->
function modify_B($string)
{
    some code to modify part B
}
<-- end A -->

<-- part B --> 
<container>some XML</container>
<-- end B -->

<-- part C -->
<-- end C -->

我想修改B部分而不更改文件的其余部分,因为A和B是脚本的逻辑,不应该改变。

有人能帮帮我吗? 预先感谢您的帮助。

4 个答案:

答案 0 :(得分:1)

从您的示例看,它看起来只是一些字符串数据XML。因此,以某种方式将内容加载到字符串中(使用标准字符串表示法设置变量,或者从单独文件的内容中读取它),根据您的想法修改字符串,然后将字符串回显到输出。那么这不再是自我修改的问题。这只是数据驱动的问题。

答案 1 :(得分:0)

你的意思是XML不在你的PHP <? ?>脚本标签之外吗?那么你想修改PHP脚本即将输出的文本吗?

如果是这种情况,请记住脚本标记之外的任何内容都只被视为字符串,PHP输出就像您编写echo $string;一样。所以只需将已更改的数据保存在字符串变量中,然后回显它。

答案 2 :(得分:0)

或者如果您需要持久化更改,请将“B”放入文件中并包含或阅读。

答案 3 :(得分:0)

你永远不应该编写自修改代码(除非你正在编写程序集)它可能会导致各种各样的问题,例如考虑如果有一个破坏文件中的代码的错误会发生什么。

将数据从代码中分离出来并使用require_once命令加载

然后,您可以使用标准文件读取和写入命令来编辑数据http://www.php.net/manual/en/book.filesystem.php

...或者更好,因为数据是XML,将文件保存为XML文件并使用简单的xml来维护数据http://php.net/manual/en/book.simplexml.php