背景:我们使用手柄模板。小的,只需要一次,我们在HTML内部插入脚本。 HTML已预翻译,一旦发布。
问题:
使用simple_html_dom,我们可以找到所有相关文本。 除了那些在脚本标签中的人!
示例"正常"
<h5 class="ues mt-1">Anmerkung ändern {bezeichnung}</h5>
脚本内部示例
<script id="template-Liste-Anmerkungen" type="text/x-handlebars-template">
<h5 class="ues mt-1">Anmerkung ändern {bezeichnung}</h5>
</script>
我们发现每个班级的所有相关文本 ues :
$html = new simple_html_dom();
$html->load($strHTML, true, false);
$HTMLElemente = $html->find('.ues');
找到所有 ues ,无论它们在表格和模态中交错多深。但是找不到脚本标记中的 ues 。它始终是纯净,干净的HTML,我们能做什么?
是的,我发现了类似的问题,有些没有充分记录,没有相关的解决方案。
答案 0 :(得分:1)
您希望遍历脚本标记并单独加载内容。
$str = <<<EOF
<script id="template-Liste-Anmerkungen" type="text/x-handlebars-template">
<h5 class="ues mt-1">Anmerkung ändern {bezeichnung}</h5>
</script>
EOF;
$doc = str_get_html($str);
foreach($doc->find('script') as $script){
$sub_doc = str_get_html($script->innertext);
foreach($sub_doc->find('.ues') as $el){
echo $el;
}
}