извлечение CDATA из XML средствами SimpleXML
Есть некоторый xml-файл:
<?xml version="1.0" encoding="utf-8"?>
<simpleNews>
<news id="5">
<short><![CDATA[<p>4</p>]]></short>
<full>FULL</full>
</news>
<news id="2">
<short><![CDATA[<p>1</p>]]></short>
<full>FULL</full>
</news>
<news id="3">
<short><![CDATA[<p>3222</p>]]></short>
<full>FULL</full>
</news>
</simpleNews>
Нужно обработать его в PHP:
$xml = new SimpleXMLElement($sXml);
var_dump($xml->news[0]->full); // работает нормально
Если я попытаюсь извлечь не full-тег, а short (он CDATA), то вернется пустой объект. Как быть???
$xml = new SimpleXMLElement($sXml, LIBXML_NOCDATA);
Флажок преобразует CDATA в простые текстовые значения.
cпасибо! помогло.