0

私はこれをしばらくハッキングしてきましたが、うまくいかないようです。

スクリプト要素の数が可変の場合、すべてのスクリプト要素の内容を取得するにはどうすればよいですか。私の例のマークアップは次のようになります。

<div></div>
<iframe><iframe>
<script>xxxx</script>
<script>xxxx</script>
<script>xxxx</script>

これまでのところ、スクリプトの数を静的に維持している場合にのみ機能します。配列を正しく反復処理していないことは明らかですが、DOMXPath のドキュメントでは、その方法として完全にスローされています。これは私がこれまでに持っているものです:

$dom = new DOMDocument();
$dom->preserveWhiteSpace = true;
@$dom->loadHtml($form_content);
$xpath = new DOMXPath($dom);
$items = $xpath->query('//script');
foreach ($items as $item) {
     $scriptContents = $item->previousSibling->previousSibling->nodeValue . "\r\    n\r\n";
     $scriptContents .= $item->previousSibling->nodeValue . "\r\n\r\n";
     $scriptContents .= $item->nodeValue . "\r\n\r\n";
}
echo $scriptContents;

これについてどうすればよいですか?私はしばらくの間SOを検索してきましたが、機能するソリューションを適用できるようです。前もって感謝します-b

4

1 に答える 1