-1

这是我的 HTML 代码:

<tr>
    <td class="serviceOK">Total</td>
    <td class="serviceOK">0d 0h 0m 0s</td>
    <td id="test" class="serviceOK">0.000%</td>
    <td class="serviceOK">0.000%</td>
</tr>

这是我的 PHP 代码:

$doc = new DOMDocument();
$doc->validateOnParse = true;
@$doc->loadHTML($report); //$report is actually my HTML code.
echo $doc->saveHTML(); //echoes everything successfully.

$run = $doc->getElementById('test');
echo $run; //echoes Nothing
var_dump($run); //echoes NULL

我正在使用 PHP DOMDocument来解析我的 HTML 代码并使用 id="test" 检索该元素内的值,但它没有回显任何内容。有什么我想念的吗?

4

2 回答 2

1

您的 PHP 代码是在 html 代码之后编写的吗?也许它找不到元素,因为脚本在元素形成之前正在运行

于 2013-06-28T20:02:41.220 回答
1

$run是一个 DOMElement 对象;你需要抓住它的nodeValue:echo $run->nodeValue;

证明: http: //phpfiddle.org/main/code/c5s-8pe

编辑:由于您var_dump返回 null,因此您需要检查您的 HTML。它无法被解析,和/或 DOM 中有多个 ID 具有相同的 ID - 这不应该发生(ID 应该是唯一的

于 2013-06-28T19:57:05.677 回答