所以我在php中玩domDocs,我正在经历许多节点的结构。当脚本找到它正在寻找的APP_ID
时,他需要返回他的兄弟值APP_USER
。我在这里没有找到解决方案,只有XPath和jQuery,我发现"避免了"的使用方式。
这很简单在调用foreach之前,放置一个迭代变量,例如$i
,然后它将"调用"兄弟的值。
$apps = $root->getElementByTagName( 'APP_ID' );
$i=0
foreach( $apps as $app ) {
if( $app->item(0)->nodeValue == CONSTANT-ID ) { // just condition
$user = $root->getElementsByTagName( "APP_USER" );
echo $user->item($i)->nodeValue;
// this $i means it returns brother's value
}
$i++;
}
你觉得怎么样?
从$app
开始,您可以使用parentNode
上升一级,然后遍历childNodes
以找到兄弟APP_USER
:
if( $app->nodeValue == CONSTANT-ID ) { // just condition
foreach ($app->parentNode->childNodes as $child) {
if ($child->localName == 'APP_USER') {
echo $child->nodeValue;
}
}
}