Коли користуватися LIBXML_NOCDATA?
Я додаю проблему при перетворенні XML в JSON.
$xml = simplexml_load_string("<foo><content><![CDATA[Hello, world!]]></content></foo>");
echo json_encode($xml, true);
/* prints
{
"content": {}
}
*/
Під час доступу до об'єкта SimpleXMLElement, він отримує CDATA:
$xml = simplexml_load_string("<foo><content><![CDATA[Hello, world!]]></content></foo>");
echo $xml->content;
/* prints
Hello, world!
*/
Я має сенс використовувати, LIBXML_NOCDATAтому json_encodeщо не отримуйте доступу до SimpleXMLElement, щоб запустити функцію кастингу рядків, я здогадуюсь про __toString()еквівалент.
$xml = simplexml_load_string("<foo><content><![CDATA[Hello, world!]]></content></foo>", null, LIBXML_NOCDATA);
echo json_encode($xml);
/*
{
"content": "Hello, world!"
}
*/