WEBシステム開発/PHPのSimpleXMLでCDATAを取得するにはLIBXML_NOCDATA
PHPでWEB APIなどを利用する場合、XMLの情報をSimpleXMLで
処理されているかと思われます。
通常利用していく上で、さほど遭遇する機会もなかったのですが
ある時、取得したい値が、何故か?特定の項目だけ空になっていました。
通信上の不具合?オブジェクト?配列の取り扱いのミス
などなど、いろいろと原因を確認させられるハメに・・・
SimpleXMLの仕様を確認したところどうやら
LIBXML_NOCDATAを付けて、処理すれば簡単に解決する事が分かりました!!!
↓使い方はこんな感じ
$xml = new SimpleXMLElement($XML_DATA, LIBXML_NOCDATA);
標準対応でもよさそうなのに・・・
これで、問題なくXML情報を取得する事ができました。