Я использую simplexml_load_file
для загрузки RSS-ленты BBC Weather, и он случайным образом дает следующую ошибку:
Warning: simplexml_load_file() [function.simplexml-load-file]: :1: parser error : Start tag expected, '<' not found in
Кажется, это случайно. Мой код не динамически меняется, поэтому я не могу понять, почему он терпит неудачу только иногда.
Если я возьму rss-файл, который «предположительно» имеет отсутствующий <
тег и сохранит его на моем компьютере, и simplexml_load_file
в это место, он отлично работает.
Любой совет, который ценится в качестве этой незначительной проблемы, сводит меня с ума.
Попробуйте этот скручивание
<?php $k = 'http://open.live.bbc.co.uk/weather/feeds/en/2656173/3dayforecast.rss'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $k); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $rss = curl_exec($ch); curl_close($ch); $xml = simplexml_load_string($rss, 'SimpleXMLElement', LIBXML_NOCDATA); echo "<pre>"; print_r($xml); echo "</pre>"; // if you want all items //$xml->channel->item item is a array //So foreach($$xml->channel->item as $item){ echo $item->title; // you can get all results here } ?>