Элемент SimpleXml: ошибка специальных символов - PullRequest
0 голосов
/ 09 декабря 2011

Я использую simpleXml для разбора моего xml, но он всегда разрывает страницу, когда я пытаюсь разобрать испанский, французский, эстонский, португальский, нижний индекс или нижний индекс.Пример XML: -

<carddata> <logo_id>0</logo_id> <cscale>Ñ</cscale><carddata>

Сценарии: -

$carddetail = new SimpleXMLElement($xml);
$carddetail = iconv('UTF-8', 'ISO-8859-15//TRANSLIT', $carddetail);

В xml я отправил

<cscale><![CDATA[Peter Nortoné]]></cscale> 

и ошибка:

Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: Entity: line 22: parser error : CData section not finished Peter Nort in D:\xampp\htdocs\logosnap\card.php on line 144

Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: <text><\![CDATA[Peter Norton in D:\xampp\htdocs\logosnap\card.php on line 144

1 Ответ

1 голос
/ 09 декабря 2011
$carddetail = new SimpleXMLElement($xml);  
<-- this set $carddetail as simplexmlelement object

Вы не можете использовать объект как строку как: -

$carddetail = iconv('UTF-8', 'ISO-8859-15//TRANSLIT', $carddetail);

Итак, попробуйте это: -

$carddetail = new SimpleXMLElement(iconv('UTF-8','ISO-8859-15//TRANSLIT',$xml));
...