调用未定义的方法SimpleXMLElement :: child_nodes()

时间:2011-04-26 14:56:53

标签: php xml simplexml smarty

我有一个解析从谷歌搜索获得的xml文本的代码 它以前工作得很好,我认为在更新我的版本信息之后它不能正常工作

我可能遇到以下错误的问题

Fatal error: Call to undefined method SimpleXMLElement::child_nodes() in /home/search.php in line 70

请让我知道如何解决这个问题

此代码用于smarty 它从curl获取响应字符串。

3 个答案:

答案 0 :(得分:0)

SimpleXMLElement没有名为child_nodes的方法。您在寻找children方法吗?

答案 1 :(得分:0)

你的答案好多了。

我通过使用domxml-php4-to-php5.php文件解决了我的问题我刚刚上传了这个文件并在我的文件中包含了该文件名。它变得有效了。

我从此链接获得该文件:http://alexandre.alapetite.fr/doc-alex/domxml-php4-php5/

:)

答案 2 :(得分:0)

使用以下表示法迭代你的xml(更改'myfile.xml'和'tagName'):

<?php
include('simple_html_dom.php');
if (file_exists('myfile.xml')) {
    $xml = simplexml_load_file('myfile.xml');
    print_r($xml);
    foreach( $xml->children() AS $child ) {
        $name = $child->getName();
        if ($name == 'tagName') {
            foreach( $child->children() AS $grandchild ) {
                // DO SOMETHING
            }
        }
    }
}
?>

还有其他更优雅的方法来实现这一目标,但这是一个简单的初学者的方法。技术信息:http://us2.php.net/manual/en/class.simplexmlelement.php