Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';t在PHP中通过DOMDocument和getElementById()获取值_Php_Html_Dom - Fatal编程技术网

Can';t在PHP中通过DOMDocument和getElementById()获取值

Can';t在PHP中通过DOMDocument和getElementById()获取值,php,html,dom,Php,Html,Dom,这是我的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>

这是我的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解析HTML代码,并使用id=“test”检索该元素中的值,但它不回显任何内容。我缺少什么吗?

$run
是一个DomeElement对象;您需要获取它的nodeValue:
echo$run->nodeValue

证明:


编辑:由于您的
var\u dump
返回空值,您需要检查HTML。它无法被解析,并且/或者DOM中有多个ID具有相同的ID——这是不应该发生的(ID应该是唯一的)

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

u也可以使用jquery和see@sharif-jquery与此无关。Zim3r正在服务器端解析它。@joe谢谢,但它返回了整个页面,而不是测试id为的元素。在phpFIDLE上成功运行的元素无法在我的Web服务器上运行。有什么想法吗?那么他的问题就在别处了。+1-考虑到问题中的信息,很难判断出问题出在哪里,但很可能是重复的ID或类似的东西。谢谢,我确实在我的Web服务器上尝试了你的代码,但我不敢相信它会给我一个错误:
注意:试图在第16行的/var/www/html/test.php中获取非对象的属性
你在PHPFiddle链接中尝试了所有东西?你的PHP版本是什么?没错,php5.3.3(cli)(构建时间:2013年2月22日02:51:11),安装了PHP-domxml-php4-php5和PHPXML。哦,没错。也许引号中有问题,所以HTML没有被正确解析。是的,但我想我在服务器上遇到了问题。评论罗布的帖子。
$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