I have following HTML which I am parsing:
<ul class="man">
<li>
height
<span>3.3"</span>
</li>
<li>
weight
<span>45kg</span>
</li>
<li>
date born
<span>1/12/1979</span>
</li>
</ul>
I am using below code to parse the above HTML:
foreach($xpath->query("//ul[@class='man']/li") as $element)
{
echo $element->nodeValue;
}
But the code returns whole thing which is inside <li></li> as height 3.3″ and weight 45kg while I need both of that separate as height as label and 3.3″ as value same way weight as label and 45kg as value.
I can achieve second that is value using “//ul[@class=’man’]/ul/span” but can’t get label in separate variable.
Any idea to solve this problem?
P.S: There is no way to change the label value as they are coming from server in HTML page.
You can iterate over the
<li>‘s children, the first of which is aDOMTextobject containing (for example) theheightlabel, and the second will be the<span>DOMElementobject: