Я использую этот код: -
<?php // Load and parse the XML document
$rss = simplexml_load_file('http://partners.userland.com/nytRss/nytHomepage.xml');
$title = $rss->channel->title;
?>
<html xml:lang="en" lang="en">
<head>
<title><?php echo $title; ?></title>
</head>
<body>
<h1><?php echo $title; ?></h1>
<?php
// Here we'll put a loop to include each item's title and description
foreach ($rss->channel->item as $item) {
echo "<h2><a href='" . $item->link . "'>" . $item->title . "</a></h2>";
echo "<p>" . $item->description . "</p>";
}
?>
</body>
</html>
Что я получил с этого сайта www.ibm.com/developerworks/library/x-simplexml.html
У меня одна загадочная проблема.
Когда я запускаю код на своем сервере разработки, он работает без проблем.
Когда я запускаю его на своем веб-сервере, я получаю следующее сообщение об ошибке: -
Предупреждение: неверный аргумент указан для foreach () в /web1/............../test3.php в строке 15
Мой сервер разработки - это сервер TurnKey Linux LAMP с PHP 5.3.2.
На моем веб-хосте работает PHP 5.2.17 в Linux.
Поиск сообщения об ошибке в Интернете, по-видимому, указывает на то, что данные, считанные из канала XML, не обрабатываются PHP 5.2.17 как массив.
Решения, приведенные здесь в разделе «Недопустимый аргумент .... foreach ()», которые я пробовал, не решают проблему.
Есть идеи, как это обойти?