当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PHP XMLReader moveToElement()用法及代码示例


XMLReader::moveToElement()函数是PHP中的内置函数,用于将光标移动到当前属性的父元素。通过将此函数与XMLReader::moveToAttribute()函数结合使用,可以使用该函数来获取具有某些属性的元素。

用法:

bool XMLReader::moveToElement( void )

参数:此函数不接受任何参数。



返回值:调用此方法时,如果成功,此函数将返回TRUE,如果失败或未定位在属性上,则返回FALSE。

下面给出的程序说明了PHP中的XMLReader::moveToElement()函数:

程序1:在此程序中,我们将获得具有属性“attrib”的元素的名称

文档名称: data.xml

<?xml version="1.0" encoding="utf-8"?> 
<div> 
    <h1 attrib="value"> Foo Bar </h1> 
</div>

文档名称: index.php

<?php 
  
// Create a new XMLReader instance 
$XMLReader = new XMLReader(); 
  
// Open the XML file 
$XMLReader->open('data.xml'); 
  
// Iterate through the XML nodes 
// to reach the h1 node 
$XMLReader->read(); 
$XMLReader->read(); 
$XMLReader->read(); 
  
// Move to attribute with name attrib 
$XMLReader->moveToAttribute("attrib"); 
  
// Move cursor to the element of attribute 
$XMLReader->moveToElement(); 
  
// Output the name of element to browser 
echo $XMLReader->name; 
?>

输出:

h1

程序2:在此程序中,我们将获得具有属性“attrib”的所有元素的名称。

文档名称: data.xml

<?xml version="1.0" encoding="utf-8"?> 
<div> 
    <h1 attrib="value1"> Foo Bar </h1> 
    <h2 attrib="value2"> Foo Bar </h2> 
    <h3 other="value"> Foo Bar </h3> 
    <h4 other="value"> Foo Bar </h4> 
</div>

文档名称: index.php

<?php 
  
// Create a new XMLReader instance 
$XMLReader = new XMLReader(); 
  
// Open the XML file 
$XMLReader->open('data.xml'); 
  
// Iterate through the XML nodes 
while ($XMLReader->read()) { 
    if ($XMLReader->nodeType == XMLREADER::ELEMENT) { 
  
        // Get the element name if attribute 
        // name is "attrib" 
        if ($XMLReader->moveToAttribute("attrib")) { 
  
            // Move cursor to the element of attribute 
            $XMLReader->moveToElement(); 
  
            // Output the value to browser 
            echo $XMLReader->name . "<br>"; 
        } 
  
    } 
} 
?>

输出:

h1
h2

参考: https://www.php.net/manual/en/xmlreader.movetoelement.php




相关用法


注:本文由纯净天空筛选整理自gurrrung大神的英文原创作品 PHP | XMLReader moveToElement() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。