Я использую следующий скрипт для чтения внешнего RSS-канала и вывода новостей на веб-сайте, над которым я работаю:
<?php
$rss = new DOMDocument();
$rss->load('http://www.somewebsite.com/news/rss.xml');
$feed = array();
foreach ($rss->getElementsByTagName('item') as $node) {
$item = array (
'title' => $node->getElementsByTagName('title')->item(0)->nodeValue,
'desc' => $node->getElementsByTagName('description')->item(0)->nodeValue,
'link' => $node->getElementsByTagName('link')->item(0)->nodeValue,
'date' => $node->getElementsByTagName('pubDate')->item(0)->nodeValue,
);
array_push($feed, $item);
}
$limit = 8;
$count = 1;
?>
<?php for ($x=0;$x<$limit;$x++) : ?>
<?php
$title = str_replace(' & ', ' & ', $feed[$x]['title']);
$link = $feed[$x]['link'];
$description = $feed[$x]['desc'];
$date = date('l F d, Y', strtotime($feed[$x]['date']));
?>
<section class="grid_3">
<div class="content">
<span class="date"><a href="<?php echo $link; ?>"><?php echo $date; ?></a></span>
<h6><a href="<?php echo $link; ?>"><?php echo $title; ?></a></h6>
</div>
</section>
<?php $count ++; ?>
<?php endfor; ?>
На днях все работало нормально, но теперь у меня был еще один взгляд: он выдает кучу ошибок по типу:
Предупреждение: DOMDocument :: load () [domdocument.load]: PCDATA недопустимо Char значение 31
Кроме того, даты постов отображаются как
Четверг 1 января 1970 г.
Кто-нибудь знает, что может быть не так? Может ли это быть что-то делать с внешним RSS-потоком? Это все равно выглядит хорошо, если смотреть в моем браузере
Задача ещё не решена.
Других решений пока нет …