通过名称获取元素- HTML DOM短语


Get Element By Name - HTML DOM PHRASE

我正在尝试使用html DOM短语短语html源,我需要在输入标签内获得一个值,我尝试了这个:

foreach ($doc->getElementsByTagName('input') as $link)
{
    $links[] = array(
        'value' => $link->getAttribute('value'), 
        'text'  => $link->nodeValue,
    );
}

这对我来说确实有效,但我的网页有多个输入标签,但我想获得指定输入标签的值。

假设它是

<input type="hidden" value="11111111" name="tele">

我尝试使用getElementsByTagName,但它给了我一个错误。

你也可以使用你现在的代码,稍微修改一下

foreach ($doc->getElementsByTagName('input') as $link) 
{
    if ($link->getAttribute('name') == 'tele') {
        $links[] = array(
            'value' => $link->getAttribute('value'), 
            'text'  => $link->nodeValue,
        );
    }
}

您可以使用DomXpath:

$xpath = new DomXpath($doc);
foreach ($xpath->query('//input[@name="tele"]') as $link) {
    $links[] = array('value' => $link->getAttribute('value'), 'text' => $link->nodeValue);
}