使用PHP从一些HTML代码中获取第一个embed标记

时间:2012-07-22 13:18:46

标签: php html-parsing

PHP脚本传递一些HTML代码,通常以对象标记开头,有时带有段落,然后对象作为变量,例如;

<object width="640" height="360" ... /><embed width="640" height="360" type="application/x-shockwave-flash" src="..." /></object>

使用PHP,我需要在HTML中识别第一个“embed”标记,并获取src,width和height的值以在其他地方使用。我可以看到这在RegEx中是如何工作的,但这似乎很重要。

真正的问题是我使用“PHP Simple HTML DOM Parser”在本地工作,但它在生产服务器上不起作用(我没有被告知原因,但听起来它不会是可能),所以现在,我正在寻找一种解决方案,它可以在不使用Simple HTML的情况下在PHP5中运行。

1 个答案:

答案 0 :(得分:0)

然后您可以使用DomDocument本机类。

这样的事情:

$dom = new DomDocument();
$dom->load($filePath);
$finder = new DomXPath($dom);
$classname="my-class";
$nodes = $finder->query("//*[contains(concat(' ', normalize-space(@class), ' '), ' $classname ')]");

来源:Getting DOM elements by classname