Carregando arquivo RSS com DOMDocument

Estou tendo um problema com minha tarefa PHP para a escola. Eu tenho que criar um script PHP que lê um arquivo XML com um monte de URLs para diferentes feeds RSS. Estou usando DOMDocument para recuperar um URL desse arquivo XML e carregar um novo DOM com o feed RSS. Eu atribuo o valor do nó “url” a $ url e, em seguida, crie um novo object DOM para o feed RSS usando $ url.

$url = $student->getElementsByTagName("url"); $url = $url->item(0)->nodeValue; $rss = new DOMDocument(); $rss->load($url); 

O arquivo RSS não será carregado quando eu usar o código acima. Eu até fiz eco de $ url para garantir que ele tenha um link atribuído a ele. No entanto, se eu colocar o url real na carga (), ele funciona bem. Por que não há $ url em carga ()?

Você pode usar o simplexml_load_file neste caso, mas lembre-se, todas essas operações são dispendiosas (limite de tempo, memory etc.).

 $rssStack = array(); $xml = simplexml_load_file("http://people.rit.edu/cns3946/539/project2/rss_class.xml"); foreach ($xml->student as $student) { // need sanitize $url $url = trim((string) $student->url); // suppress errors, cos some urls return "404 Not Found" $rss =@ simplexml_load_file($url); $rssStack[] = $rss; // also can use // $rss = new DOMDocument(); // $rss->load($url); // $rssStack[] = $rss; } print_r($rssStack); 

ATUALIZAR

 $rssStack = array(); $xml = new DOMDocument(); $xml->load("http://people.rit.edu/cns3946/539/project2/rss_class.xml"); foreach ($xml->getElementsByTagName("url") as $url) { // you need to sanitize url $url = trim($url->nodeValue); $rss = new DOMDocument(); $rss->load($url); $rssStack[] = $rss; // break; } print_r($rssStack);