我正在使用simplexml_load_file
解析XML,然后使用json_encode
和json_decode
来获取所有信息作为数组:
$xml = simplexml_load_file('/var/www/darkglass/wp-content/themes/dark2/assets/xml/artists.xml');
$musicos = json_encode($xml);
$musicos = json_decode($musicos, true);
我遇到这个问题,我想在标签内添加HTML代码,但只有在<![CDATA
之前添加一个字符时才会有效,如下例所示:
这不起作用:
<band><![CDATA[<a class="abandlink" href="#">Cannibal Corpse</a>]]></band>
这有效:
<band>.<![CDATA[<a class="abandlink" href="#">Cannibal Corpse</a>]]></band>
知道为什么会这样吗?
答案 0 :(得分:1)
您应该使用LIBXML_NOCDATA
选项:
$xml = simplexml_load_file('artists.xml', 'SimpleXMLElement', LIBXML_NOCDATA);
答案 1 :(得分:-1)
好吧,我找到了解决这个问题的方法,
我刚刚将substr
,$band = substr($band, 1);
添加到变量中,因此它删除了变量的第一个字符,并且它可以正常工作。