我正在尝试将一组xml文件从一个目录转换为json格式但是在我的xml中有CDATA,当它转换CDATA时,它变为空。我使用的是simplexml_load_file($ xml),但我读到了没有获得CDDATA,所以我尝试了simplexml_load_string($ xml,“SimpleXMLElement”,LIBXML_NOCDATA)但是
它只是给了我这个错误:
警告:simplexml_load_string():实体:第5行:解析器错误:开始 标签预期,'<'在C:\ xampp \ htdocs \ xmlfilter \ xmlfilter.php中找不到 第65行
警告:simplexml_load_string():in 第65行的C:\ xampp \ htdocs \ xmlfilter \ xmlfilter.php
警告:simplexml_load_string():^ in 第65行的C:\ xampp \ htdocs \ xmlfilter \ xmlfilter.php
在新文件的末尾写下'false?¿':
"LETRA_IMPRENTA":{},"LETRA_MAYUSCULA":{},"PANTALLA_VERTICAL":{},"PANTALLA_PEQUENA":{},"NAVEGADOR_CHROME":{},"SALIR_MITAD_BODY":{},"SALIR_MITAD_GUARDAR":{},"SALIR_MITAD_NOGUARDAR":{}}}falsefalsefalsefalsefalsefalsefalsefalse
我的xml示例:
<LANGUAGE><HELLO><![CDATA[hello]]></HELLO></LANGUAGE>
答案 0 :(得分:3)
$xml = simplexml_load_file("xml/".$y); simplexml_load_string($xml, "SimpleXMLElement", LIBXML_NOCDATA)
simplexml_load_file
将字符串中的文件路径作为输入,并返回一个简单的XML对象。这很好。
simplexml_load_string
将字符串中的一些XML作为输入并返回一个简单的XML对象。您给它一个简单的XML对象作为输入,而不是字符串。这不太好。
使用simplexml_load_file
或 simplexml_load_string
,而不是两者。