Web Artisan Blog - ウェブ アルチザン ブログ

PHP:DOMを使用してXMLにデータセットする際のHTML特殊文字の扱い

PHP

2005年04月15日

アフィリエイトから企業サイト分析まで。訪問者の動きがまるわかりのアクセス解析サービス「リサーチアルチザンプロ」

LINEやSkypeみたいなビデオ通話がブラウザだけでできる!オンライン通話サービス「EZ-Interview - イージーインタビュー」

XMLは、タグ表記するという点でHTMLと同じですが、
という事は、XMLにも「<」や「>」や「&」等の特殊文字の扱いに注意が必要になります。


例えば、下記のようなXMLにしたければ、

<?xml version="1.0" encoding="Shift_JIS" ?>
<test>
<data>BLOGSITE=<WEB Artisan></data>
</test>



実際は、下記のようにXML定義しなければいけません。

<?xml version="1.0" encoding="Shift_JIS" ?>
<test>
<data>BLOGSITE=&lt;WEB Artisan&gt;</data>
</test>



で、こういう風にXMLデータを突っ込むには、
>htmlentities関数
>htmlspecialchars関数
この辺の関数を駆使すればいいかとなりますが、
PHP5.0.3以降では、かなり便利なっていて、この辺の関数は使う必要ありません。
>DOMDocument->createTextNode
上記マニュアルにあるように、
DOMDocument->createTextNode関数を発行すれば、
html特殊文字変換を自動で行ってくれるようになります。
つまり、何も気にしなくても、勝手に変換してくれるんです。
これは便利。。

ちなみにクドイですが、PHP5.0.3以降の話です。

Web面接に最適。ブラウザだけでビデオ/音声通話ができるオンライン通話サービス。「EZ-Interview - イージーインタビュー」
訪問者録画機能も付いたシンプルで高機能なリアルタイムアクセス解析「リサーチアルチザンプロ」