0

このベアボーンの例のように構成された 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 -->

A と B は変更してはならないスクリプトのロジックであるため、ファイルの残りの部分を変更せずに部分 B を変更したいと思います。

誰か助けてくれませんか?よろしくお願いいたします。

4

4 に答える 4

1

あなたの例から、それは単なる文字列データ XML のようです。したがって、何らかの方法でコンテンツを文字列にロードし (標準の文字列表記で変数を設定するか、別のファイルの内容から読み取る)、気まぐれに応じて文字列を変更し、文字列を出力にエコーします。そうすれば、もはや自己修正の問題ではありません。それは単にデータ駆動型であることの問題です。

于 2009-12-30T01:16:28.973 に答える
0

自己修正コードを記述しないでください(アセンブリを記述している場合を除く)。これにより、あらゆる種類の問題が発生する可能性があります。たとえば、ファイル内のコードを破壊するバグがある場合にどうなるかを考えてみてください。

コードからデータを分割し、require_onceコマンドでロードします

次に、標準のファイル読み取りおよび書き込みコマンドを使用して、データを編集できますhttp://www.php.net/manual/en/book.filesystem.php

...または、データがXMLであるため、ファイルをXMLファイルとして保存し、単純なxmlを使用してデータを維持します http://php.net/manual/en/book.simplexml.php

于 2012-11-21T15:16:27.187 に答える
0

<? ?>XML が PHPスクリプト タグの外側にあるということですか? では、PHP スクリプトによって出力されるテキストを変更したいですか?

その場合は、スクリプト タグの外側にあるものはすべて文字列として扱われ、PHP がecho $string;. 変更したデータを文字列変数に保存し、それをエコーし​​ます。

于 2009-12-30T01:23:51.530 に答える
0

または、変更に永続性が必要な場合は、ファイルに「B」を入れて、それを含めるか読み取ります。

于 2009-12-30T01:34:29.840 に答える