我如何获取输入类型,无线电值XPath在PHP中获取属性值

问题描述 投票:0回答:1
<span id="gender" class="form-control pull-left radio-input">
<input id="gender_0" type="radio" name="gender" value="MALE" >
<label for="gender_0">Male</label>
<input id="gender_1" type="radio" name="gender" value="FEMALE" checked="checked">
<label for="gender_1">Female</label>
<input id="gender_2" type="radio" name="gender" value="TRANSGENDER" >
<label for="gender_2">Transgender</label>
<input id="gender_3" type="radio" name="gender" value="OTHER" >
<label for="gender_3">Other</label></span>

这里是PHP代码:

$dochtml = new DOMDocument();
libxml_use_internal_errors(true);
$dochtml->loadHTML($strhtml);
libxml_use_internal_errors(false);
$xp = new DOMXpath($dochtml); 
$nodesGender = $xp->query('//input[@name="gender"]');

我将如何获取输入类型的单选检查值?

php dom xpath getattribute getvalue
1个回答
0
投票

您可以轻松地扩展您的XPath表达式以同时检查名称和已检查属性,然后在以下位置返回value属性...

$gender = $xp->evaluate('string(//input[@name="gender" and @checked="checked"]/@value)');

echo $gender;

使用evaluate()允许您返回一个值,并且XPath表达式使用string()将结果转换为字符串-然后,您只需回显返回的值。

© www.soinside.com 2019 - 2024. All rights reserved.