Как прочитать этот XML, получить "ошибка синтаксического анализатора: раздел CData не завершена"
Я пытаюсь прочитать этот XML: XML файл RSS
но безуспешно.. есть эта ошибка
Warning: simplexml_load_file(): http://noticias.perfil.com/feed/:232: parser error : CData section not finished <p>La sola lectura de los datos estadísticos desp in D:\xampp\FerreWoo\scrap-rvnot.php on line 43
Warning: simplexml_load_file(): Isis, con lo que habría logrado un nuevo respaldo a sus proyectos terroristas. in D:\xampp\FerreWoo\scrap-rvnot.php on line 43
Warning: simplexml_load_file(): ^ in D:\xampp\FerreWoo\scrap-rvnot.php on line 43
Я использую этот код:
$feed = simplexml_load_file($urls, null, LIBXML_NOCDATA);
Я тоже пытаюсь cURL, но те же ошибки все еще появляются.
Я знаю, что, возможно, файл de xml неверен... но должен быть способ прочитать его, верно?
1 ответ
Решение
У вас есть несколько недопустимых символов в этом XML. Попробуйте этот код ниже
$url = 'http://noticias.perfil.com/feed/';
$html = file_get_contents($url);
$invalid_characters = '/[^\x9\xa\x20-\xD7FF\xE000-\xFFFD]/';
$html = preg_replace($invalid_characters, '', $html);
$xml = simplexml_load_string($html);
//test purpose part
$encode = json_encode($xml);
$decode = json_decode($encode, true);
print_r($decode)
Надеюсь, поможет