Неправильный синтаксический анализ XML без явной причины - PullRequest
0 голосов
/ 25 октября 2010

Мой фид XML создается из ассоциативного массива.

Использование нового DOMDocument ('1.0', 'UTF-8');

и все работало нормально, пока я не внес некоторые изменения в методы, используемые для его преобразования из iso-8895-1 в UTF-8.

Символ, помеченный флажком, - это буква R, но я зашел в файл через ftp и изменил его вручную (удалил и перепечатал r в случае каких-либо ошибок).

Я изменил его с $summ = str_replace(chr(10),"",$summ); на $summ = str_replace(array("\n", "\r", "\r\n"),"",$summ);, но, как вы можете видеть ниже, я изменил его обратно и ничего. Я также установил для DOMDocument значение formatoutput = false, поскольку для него ранее было задано значение true, но все, что он сделал, это переместил проблему в другую букву r, оба находятся в конце слов ?????

//$summ = str_replace(array("\n", "\r", "\r\n"),"",$summ);
    $summ = str_replace(chr(10),"",$summ);
/*$v = str_replace(" "," ",$v);
$v = str_replace("  ","",$v);*/
$summ = iconv("ISO-8859-1", "UTF-8//TRANSLIT",$summ);
$summ = str_replace("£","£",$summ);
//$summ = htmlentities($summ, ENT_QUOTES, "UTF-8");
$this->summary = addslashes($summ);

1 Ответ

0 голосов
/ 12 ноября 2010

Извините за неясный вопрос, но я не смог показать код по причинам, связанным с чувствительностью вывода.

В любом случае, проблема заключалась в htmlentities, и htmlspecialchars вызывал ту же проблему, без них он работал нормально.

...