#is\\', \\'\\', $html);

使用DOMDocument

更可靠、更安全的方法是利用專為HTML 解析而設計的DOMDocument 類別:

$dom = new DOMDocument();$dom->loadHTML($html);foreach ($dom->getElementsByTagName(\\'script\\') as $item) {    $item->parentNode->removeChild($item);}$html = $dom->saveHTML();

其他替代方案

或者,考慮使用以下技術之一:

安全性注意事項

請記住,使用者輸入應被視為潛在不安全。始終清理和驗證 HTML 內容,以防止惡意程式碼注入。正規表示式只能用於受信任的內容。

","image":"http://www.luping.net/uploads/20241120/1732061541673d2965a6b35.jpg","datePublished":"2024-11-20T08:45:44+08:00","dateModified":"2024-11-20T08:45:44+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何從 HTML 內容中刪除腳本標籤:綜合指南

如何從 HTML 內容中刪除腳本標籤:綜合指南

發佈於2024-11-20
瀏覽:197

How to Remove Script Tags from HTML Content: A Comprehensive Guide

從HTML 內容中刪除腳本標籤:綜合指南

使用HTML Purifier 時,您可能想要專門刪除腳本標籤,而不刪除內聯格式或其他元素。這可以透過多種方法來完成。

使用正規表示式

雖然不建議用於HTML 解析,但簡單的正規表示式可以完成任務:

$html = preg_replace('#<script(.*?)>(.*?)</script>#is', '', $html);

使用DOMDocument

更可靠、更安全的方法是利用專為HTML 解析而設計的DOMDocument 類別:

$dom = new DOMDocument();
$dom->loadHTML($html);
foreach ($dom->getElementsByTagName('script') as $item) {
    $item->parentNode->removeChild($item);
}
$html = $dom->saveHTML();

其他替代方案

或者,考慮使用以下技術之一:

  • 帶有自訂過濾器的HTML Purifier: 設定HTML Purifier 以透過建立自訂過濾器來刪除腳本標籤。
  • PHP 簡單HTML DOM 解析器: 使用這個流行的PHP 函式庫來刪除
  • Jsoup Library for Java: 對於基於Java 的項目, Jsoup 提供了一種強大的方法來清理HTML 內容。

安全性注意事項

請記住,使用者輸入應被視為潛在不安全。始終清理和驗證 HTML 內容,以防止惡意程式碼注入。正規表示式只能用於受信任的內容。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3