是否可以通过PHP获取HTML元素的属性

时间:2012-11-22 14:01:11

标签: php

我知道通过使用jQuery,我可以使用$('span').attr('title')来获取属性标题的值,但是如何使用PHP来实现呢?

<span title="2012-11-22 15:35">6 小時前</span>

<span>22/11/2012 15:35</span>

2 个答案:

答案 0 :(得分:1)

您可以将其加载到DOM文档中,或使用simplexml。

DOM文档示例:

// Load your HTML as a string here, or you can open a file (see docs)
$myHtml = new \DOMDocument();
$myHtml->loadHTML($htmlString);

// Get all span tags
$spans = $myHtml->getElementsByTagName('span');

foreach ($spans as $span) {
    // get
    $span->getAttribute('title');

    // set  
    $span->setAttribute('title', 'new title');

    // append text node (like innerHTML)
    $span->appendChild($myHtml->createTextNode('something'));
}

要替换元素的文本,您需要创建一个TextNode并附加到span。

答案 1 :(得分:0)

可以使用DOM使用xpath解析HTML。 Xpath可用于选择属性提供的html中的任何元素。