從HTML 內容中刪除腳本標籤
問題:
問題:問題:
如何選擇只有刪除
答案:$html = preg_replace('#<script(.*?)>(.*?)</script>#is', '', $html);
使用正規表示式(Regex)
雖然不建議為了解析HTML,可以使用一個簡單的正規表示式來刪除<script> 。標籤:<pre class="brush:php;toolbar:false">$dom = new DOMDocument(); $dom->loadHTML($html); $script = $dom->getElementsByTagName('script'); $remove = []; foreach($script as $item) { $remove[] = $item; } foreach ($remove as $item) { $item->parentNode->removeChild($item); } $html = $dom->saveHTML();<p><strong>使用 DOMDocument:<p><strong>更可靠、更安全的方法是使用 DOMDocument 類別:<p>附加選項:<pre class="brush:php;toolbar:false">$html = strip_tags($html, '<p><a><b>');<p><strong>使用PHP 的原生strip_tags() 函數<p>雖然它不會選擇性地刪除<script>標籤,它可用於刪除所有HTML 標籤:<pre class="brush:php;toolbar:false">$config = HTMLPurifier_Config::createDefault(); $config->set('Core.RemoveScript', true); $purifier = new HTMLPurifier($config); $html = $purifier->purify($html);<🎜><🎜><🎜>使用HTML Purifier<🎜><🎜><🎜>如果您希望執行全面的 HTML 解析和安全措施,請考慮使用HTML Purifier 函式庫:<🎜><🎜></script>以上是如何從 HTML 內容中刪除 `` 標籤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!