XMLは次のとおりです。
<Routes>
<Route type="source">
<Name>incoming</Name>
<Table><Tablename>incoming</Tablename></Table>
</Route>
<Route type="dest">
<Name>outgoing</Name>
</Route>
</Routes>
私の目標は、Route / Table / Tablenameから「incoming」を出力しようとすることですが、関数を持つクラスを使用します。
$doc = new SimpleXMLElement('routingConfig.xml', null, true);
class traverseXML
{
function getData($path = "Route", $type, $operation){
global $doc;
if($type == "table"){
$path = $path."[1]/Table/Tablename";
}
if($operation == "value"){
return $doc->xpath($path);
}
}
}
$traverseXML = new traverseXML;
これは値を返すと思っていたでしょうが、配列を返します。
echo $traverseXML->getData("Route", "table", "value");
//returns: Array
代わりにこれを行う場合:
print_r($traverseXML->getData("Route", "table", "value"));
//returns: Array ( )
値の代わりに配列を返すのはなぜですか?
よろしくお願いします。