我有一个XML,我想在PHP中检索<p>
标签内的值。我怎么做?我正在尝试getElementbyId
,getAttribute
,但我无法获取数据。
$xmlDoc = new DOMDocument();$path_to_dir = "/var/www/html/Dalai/Annotation/0001.xml";
$xmlDoc->load($path_to_dir);$elements1 = $xmlDoc->getElementsByTagName('text');
foreach($elements1 as $node)
{
foreach($node->childNodes as $child)
{
if($child->nodeName=='p')
{
$path=$child->getAttribute();
echo $path;
}
}
}
答案 0 :(得分:0)
我认为在这一行中$path=$child->getAttribute();
getAttribute应该将一个字符串作为参数,然后返回一个字符串。
答案 1 :(得分:0)
假设 <p>
中的值,您的意思是foo
中的<p>foo</p>
等文字内容,那么您可以通过访问它textContent
或nodeValue
*:
$path = $child->textContent;
//or $path = $child->nodeValue;
echo $path;
*)任何人都会这样做,因为在这种情况下它将在DOMElement
上被调用。有关textContent
和nodeValue
之间更微妙的差异,请参阅:PHP DOM textContent vs nodeValue?