0

長年のリスナー、初めての発信者。

これが私がやっていることです...

PHP Webサービスを作成しました.string、intなどの単純なデータ型を送信しても問題ありません... stringまたはintを返す問題はありません。

ここで、XML でデータを返したいと考えています。

だから私は DomDocument を作成し、すべてのデータを入力しました...

その後、サービスから返却します。

クライアント側でオブジェクトを XML ドキュメントとして読み込もうとすると、ルートが適切にフォーマットされていないというエラーが表示されます。

デバッグを見ると、すべての「特殊」文字がエスケープされています。

私はハックを行い、「<」を>などに置き換えました。

次に、結果をロードできます。

これは正しくないようです。適切にフォーマットされた XML を返すことができるはずです。

だから私はそれがxmlオブジェクトを定義した方法にあると推測しています???

誰かが xml オブジェクトの戻り値を定義する PHP のサンプルを投稿できますか?

私は何日も探しましたが、MySql からデータを選択して XML に変換し、XML をクライアントに返す簡単な例を見つけることができません。

4

3 に答える 3

1
I did a hack and replaced "<" with > and so on.

.XMLの有害な文字を置き換えるハックはありません。それがルールです。そのようなキャラクターについては、こちらをお読みください。代わりに、次のコードを使用できます。

function replace_characters_for_xml(&$str)
{
   $str = str_replace("&","&amp;",$str);
   $str = str_replace(">","&gt;",$str);
   $str = str_replace("<","&lt;",$str);
   $str = str_replace("'","&apos;",$str);
   $str = str_replace('"',"&quot;",$str);
}
...
replace_characters_for_xml($string);
于 2012-06-07T04:29:32.227 に答える
0

MySql データを XML に格納する別のコード例を見つけました。これは、結果として私が探していたものに関するトリックを行いました.

PHP DOM を使用して MySQL データから XML ファイルを作成する

于 2012-06-08T00:18:02.307 に答える
0

だから私は DomDocument を作成し、すべてのデータを入力しました...

ここであなたがしたことはすべて間違っていたと思います。

于 2012-06-07T08:03:37.097 に答える