Коли користуватися 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!"
}
*/