2015-03-31 67 views
0

我在這個網站上看到了很多鏈接。其中一人是非常接近: parsing a georss namespace with simplexml如何使用php提取xml提要中的georss:point標記

對於我的目的,我曾編輯過這樣的代碼:

<html> 
 
\t <head> 
 
\t \t <title>Testing</title> 
 
\t </head> 
 
\t <body> 
 
\t <?php 
 
    $file = "http://www.ubalert.com/alerts.rss"; 
 
    $xml = simplexml_load_file($file); 
 
    $loc = $xml->channel->entry; 
 
    foreach ($loc->children('http://www.georss.org/georss') as $geo) 
 
\t { 
 
     echo $geo; 
 
    } 
 
\t ?> 
 
\t </body> 
 
</html>

我想提取的GeoRSS:點標記值從給rss飼料。我嘗試了很多但失敗了。運行上述代碼給出致命錯誤:

致命錯誤:調用一個成員函數的兒童()上的空在C:\ XAMPP \ htdocs中\ phpproj \ Test2.php第10行

任何幫助,將理解的。謝謝。

回答

0

我知道這是舊的,但也許這會幫助有人尋找解析GeoRss源或任何使用命名空間的XML。

$url = 'http://www.ubalert.com/alerts.rss'; 
$xml = simplexml_load_file($url); 
foreach ($xml->entry as $entry) { 
    //Use Namespace 
    $namespaces = $entry->getNameSpaces(true); 
    $geo = $entry->children($namespaces['georss']); 
    echo $geo->point; 
    echo "\n"; 
} 

在這裏閱讀更多: http://blog.sherifmansour.com/?p=302