2

我在使用 PHP 的 SimpleXML 获取命名空间(或半科林)项目时遇到问题。我已经通过谷歌进行了一些挖掘,并尝试了喜欢 asXML 的方法,但我回到了第一方。

我无法获取的部分 <内容:编码>

http://content.sportsdatallc.com/?feed=rss2&cat=364

PHP

$xml = new SimpleXMLElement($response, LIBXML_NOCDATA);
print_r($xml);

我可以得到我需要的所有节点,除了上面的那个。如果我 print_r 它不显示。

我也试过这个:

$xml = new SimpleXMLElement($response, LIBXML_NOCDATA);
foreach ($xml->channel->item as $item)
{
    echo 11;
    $art = $item->children('content:encoded');
    print_r($art);
}
4

2 回答 2

1

简单的解决方案 str_replace 内容:用内容编码。

$xml = str_replace('content:encoded>', 'content>', $xml);

它可能不是最好的解决方案,但它很简单并且有效:)

于 2012-07-13T13:37:43.790 回答
0

你需要:

foreach($xml->channel->item as $item) {
  $contentNodes = $item->children('content',true);
   ...
}

看看这个类的命名空间。

于 2012-07-12T19:27:55.173 回答