2011-12-08 72 views
1

我不確定發生了什麼。我有這樣的代碼:PHP readInnerXML返回空白字符串

`case (XMLREADER::ELEMENT): 
$node_type = $reader->nodeType; 

$node_name = $reader->name; 

    if ($node_name == "gs_relay_rpc"){//I need this to work now 

    $node_value = $reader->readInnerXML(); 

    get_xml_data("<gs_relay > ".$node_value."</gs_relay>"); 

    include($rpc_folder.$node_name.".php"); 
    }` 

這顯然是switch語句的一部分,它的工作原理完美。然後,我有這樣的代碼:

`case (XMLREADER::ELEMENT): 
$node_type = $reader->nodeType; 
echo $node_type."->"; 
$node_name = $reader->name; 

    if ($node_name == "itp_exchange_rpc"){ 
    echo $node_name." = "; 
    $reader->read(); 

    $node_value = $reader->readInnerXML(); 
    get_xml_data("<test > ".$node_value."</test>"); 

    } else { 
    echo $node_name." = "; 
    $reader->read(); 
    $node_value = $reader->value; 
    echo $node_value."<br>"; 
    }` 

這實際上第一個塊的翻版,但與readInnerXML()返回空白此第二塊。 xml塊是有效的,因爲它被解析。我的問題是,我需要遞歸它,但我不能,因爲該函數返回空白。

的XML: <itp_exchange_rpc > <itp_floor > <itp_floor_name > [email protected]</itp_floor_name> </itp_floor></itp_exchange_rpc>

+0

任何人都可以幫助擺脫一些光 – Thaps

+0

是否有一個更可靠的方法,然後readInnerXML讓我嵌套的xml塊? – Thaps

+0

錯誤信息:警告:XMLReader :: XML()[xmlreader.xml]:作爲輸入提供的空字符串在...' – Thaps

回答

0

原來神擊打我。早上的一次車禍讓我看到第二個街區有一個太多的reader->read()。我現在得到的字符串很好。