当前情况:
我正在使用 DomDocument 将 html 页面加载到 var 中
$dom = new DOMDocument('1.0', 'UTF-8');
@$dom->loadHTML($html);
我需要解析 3 个选项字段列表。HTML 看起来像这样:
<li>
<select id="advertiser" name="advertiser[]" multiple="multiple" autocomplete="off"> <option value="35" >Website Adv 1</option>
<option value="36" >Website Adv 1</option> <option value="41" >Website Adv 1</option>
<option value="45" >Website Adv 1</option>
</select>
</li>
现在我在 Stack 上找到了这段代码,但它不起作用..
$xpath = new DOMXpath($dom);
$options = $xpath->query("*/select[@name='advertiser[]']/option");
foreach ($options as $option) {
$optionValue = $option->getAttribute('value');
$optionContent = $option->nodeValue;
echo "$optionValue and $optionContent\n";
}
问题仍然存在:
如何解析 HTML 页面以将选项选择的字段提取到数组中,例如:value=>option_text