[英]How can I grab all nodes from XML with PHP+mySQL?
我需要從XML中獲取所有節點。 我嘗試使用下面的PHP編碼。 這是工作。 但我無法從xml中獲取<description>
和圖像。
這是來自其他網站的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("<","<",$content);
$content=ereg_replace(">",">",$content);
$content=ereg_replace("&","&",$content);
$content=ereg_replace(""","\"",$content);
$content=ereg_replace("'","\'",$content);
$title=ereg_replace("<","<",$title);
$title=ereg_replace(">",">",$title);
$title=ereg_replace("&","&",$title);
$title=ereg_replace(""","\"",$title);
$title=ereg_replace("'","\'",$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學校閱讀。 我找不到確切的答案。
請幫助。 謝謝。
使用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;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.