Как я могу получить все узлы из XML с помощью PHP + mySQL?

Мне нужно захватить все узлы из XML. После того, как я попробую использовать ниже кодирование PHP. Это работа. Но я не могу схватить <description> и изображение из XML.

Вот XML с другого сайта (UTF-8 тайский язык)
http://www.dailynews.co.th/rss/rss.xml

Вот мой PHP-код:

$Rsssurl_SQL="SELECT * from rss_feed_url";
$Rsssurl_RESULT=mysql_db_query($dbname,$Rsssurl_SQL);
while ($Rsssurl_ROW=mysql_fetch_array($Rsssurl_RESULT)) {
$request_url = $Rsssurl_ROW[1];
$xml = simplexml_load_file($request_url) or die("");
foreach($xml->channel->item as $item){
$title = $item->title;
$content = $item->description;
$date = $item->pubDate;
$link = $item->link;

/* I use ereg_replace to replace special characters */

$content=ereg_replace("&lt;","<",$content);
$content=ereg_replace("&gt;",">",$content);
$content=ereg_replace("&amp;","&",$content);
$content=ereg_replace("&quot;","\"",$content);
$content=ereg_replace("&#039;","\'",$content);

$title=ereg_replace("&lt;","<",$title);
$title=ereg_replace("&gt;",">",$title);
$title=ereg_replace("&amp;","&",$title);
$title=ereg_replace("&quot;","\"",$title);
$title=ereg_replace("&#039;","\'",$title);
$title=ereg_replace("\'","",$title);
$title=ereg_replace("<","", $title);
$title=ereg_replace(">","", $title);
$title=ereg_replace("&","", $title);
$title=ereg_replace("\"","", $title);
}
}

Я могу схватить <title>, <link> , <pubDate> и вставьте все в MySQL. Но только <description> Я не могу захватить все это (изображение и длинный текст).

Я стараюсь искать во многих справках и читать из школы W3C. Я не могу найти точные ответы.

Пожалуйста, помогает. Благодарю.

0

Решение

Вам нужно привести значение в виде строки при использовании simplexml. Попробуй это :

$Rsssurl_SQL="SELECT * from rss_feed_url";
$Rsssurl_RESULT=mysql_db_query($dbname,$Rsssurl_SQL);
while ($Rsssurl_ROW=mysql_fetch_array($Rsssurl_RESULT)) {
$request_url = $Rsssurl_ROW[1];
$xml = simplexml_load_file($request_url) or die("");
foreach($xml->channel->item as $item){
$title = (string) $item->title;
$content = (string) $item->description;
$date = (string) $item->pubDate;
$link = (string) $item->link;
}
}
  • Извините, я забыл} в конце.
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]