如何使用简单HTML DOM PHP获取跨度数据反应值?

时间:2019-06-07 06:06:07

标签: php html class dom

这些都不起作用:

$html = file_get_html("https://www.example.com/page/");
print($html->find('[data-reactid=10]', 0)->plaintext);
print($html->find('[data-reactid=11]', 0)->plaintext);

其中的html看起来像这样:

<div class="stuff" data-reactid="10">
<span data-reactid="11">Value I want</span>
</div>

我在做什么错了?

仅供参考。确实可行:

print($html->find('[data-reactid=5]', 0)->plaintext);`

其中:

<div class"stuff" data-reactid="5">
<!-- react-text: 6 -->
Value I want
<!-- /react-text:  -->
</div>

那么如何获得跨度的值? 我可以通过div获取值。

1 个答案:

答案 0 :(得分:0)

这有效。

$html_str = '
    <div class="stuff" data-reactid="10">
    <span data-reactid="11">Value I want</span>
    </div>
';

// Create a DOM object
$html = new simple_html_dom();

// Load HTML from a string
$html->load($html_str);

// Get the value
echo $html->find('div[data-reactid=10]', 0)->find('span', 0)->{'data-reactid'};