人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHP5のSimpleXMLについての質問です。

実現したいことは、
「日本語が含まれたXMLをSimpleXMLオブジェクトとして読み込んで、
要素の追加や削除を行った後にそのXML自体を"実体参照を含まない形で"、"文字列として"表示させること」
です。

現在asXML()メソッドを利用していますが、どうしても日本語が実体参照された形になってしまいます。
しかも実体参照(文字実体参照)と文字参照(数値文字参照)が混合した形になっています。
これをなんとか回避したいのですが、何かよい方法がありましたら教えてください。

よろしくお願いします。

●質問者: k1LoW
●カテゴリ:コンピュータ インターネット
✍キーワード:XML オブジェクト メソッド 回避 実体参照
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● TNIOP
●27ポイント

http://www.jagat.or.jp/sgml/xml/SXML/SXML_2.htm

こちらのような感じではいかがでしょうか。

◎質問者からの返答

解答ありがとうございます。

しかし、今回の問題はMACのXMLエディタではなく、PHPのSimpleXML関数の話です。また、問題を解決していないようです。


2 ● felix33
●27ポイント

これ参考になりますか?

http://dozo.matrix.jp/pear/index.php?PHP%2FLiblary%2FSPL%2FSimpl...

◎質問者からの返答

回答ありがとうございます。

残念ながら実体参照については言及していないようです。


3 ● studioes
●26ポイント

えーと、当方のPHP5.1.6では再現しないのですが、もしかしてUTF-8以外の文字コードを使ったりしているのでしょうか?

SimpleXML自体は、UTF-8やLatinコードに対応していて、EUC-JP等は、動いたり動かなかったりという状態です。

◎質問者からの返答

回答ありがとうございます。また、検証ありがとうございます。

もしかしたら自分は問題の切り分けができていないのかもしれません。

環境はPHP5.1.6で内部エンコードもUTF-8です。

やっていることは、

「フォーム(UTF-8)からPOSTで送られてくるデータを元にSimpleXML関数でXMLを作成してそれをasXMLでテキスト化してechoで表示」

です。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ