2017-09-26 116 views
0

背景:我們使用句柄模板。小的,只需要一次,我們插入內部腳本,內部HTML。 HTML是預先翻譯的,一次發佈。simple_html_dom在腳本中查找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> 

例子我們發現每類中的所有相關文本的UE

$html = new simple_html_dom(); 
$html->load($strHTML, true, false); 
$HTMLElemente = $html->find('.ues'); 

所有的UE被發現,不管怎樣深深地他們在表格和模態中交錯。但腳本標籤內的處的未找到。它始終是純粹的,乾淨的HTML,我們能做什麼?


是的,我發現類似的問題,有些沒有足夠的文件,沒有一個有相關的解決方案。

回答

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; 
    } 
} 
+0

謝謝!就像在你的回答中一樣,我在一個新的simple_html_dom()中加載腳本內部的字符串; 它的工作原理!大! –