PHP 简单 HTML DOM 解析器:Select 多个项目

PHP Simple HTML DOM Parser : Select multiple items

这是我的问题,我想使用 HTML DOM 从 HTML 获取文本。

<div class="smalldesc">
    <div itemprop="datePublished" class="date">Kamis, 25 Mei 2017 | 14:49 WIB</div>
    <div itemprop="author" itemscope itemtype="http://schema.org/Person" class="author">Oleh : <b></b><b>...</b></div>
</div>

我要获取的文字是"Kamis, 25 Mei 2017 | 14:49 WIB"。这是我尝试过的:

$data->find('div[itemprop=datePublished class=date]',0)

$data->find('div[itemprop="datePublished" class="date"]',0)

但我仍然得到 null,如何同时 select 两个项目?

尝试这样做

$data->find('.date');

简单 HTML DOM 解析器不向 select 元素提供识别两个或更多属性的功能。也就是说,div[itemprop=datePublished class=date] 被视为 select 或 class 的垃圾。

我根本不推荐这个库,因为它有内置的、性能更好、更简单的解析方法DOM:DOMXPath

$dom = new DOMDocument();
$dom->loadHTML($html);
$dox = new DOMXPath($dom);
$dateEl = $dox->query("//div[@itemprop='datePublished'][@class='date']")->item(0);

echo $dateEl->textContent; // Kamis, 25 Mei 2017 | 14:49 WIB

PHP live demo