1
因爲我不想使用php的stip_tags功能而不是我想將<script> and </script>
替換爲空字符串,所以輸出應該是alert(1)。使用php刪除特定的html標籤
輸入: -
<script>alert(1)</script>
輸出: - 警報(1)
如何實現它。
因爲我不想使用php的stip_tags功能而不是我想將<script> and </script>
替換爲空字符串,所以輸出應該是alert(1)。使用php刪除特定的html標籤
輸入: -
<script>alert(1)</script>
輸出: - 警報(1)
如何實現它。
您總是可以使用strip_tags()
,第二個參數包含允許的標籤。
Alternativly,使用...
preg_replace('/<script>(.*)</script>/i', '$1', $input);
注意,未經測試。
我只是想取代
要麼使用一個簡單的替換:
或正則表達式:
來源
2011-09-30 12:44:19 klaustopher
就說明你不希望在第二個PARAM
來源
2011-09-30 12:45:10
不解決問題。將刪除標籤內的節點。該示例顯示剝離標籤,但不顯示內容。 – Samvel
-1根本沒有解決問題。首先,OP說'我不想使用stip_tags「。其次,如果這是剝離整個HTML文件的標籤呢?期望所有可能的html標籤存在的全面清單是完全不合理的。 – Birrel
我猜你刪除的那些想要捍衛XSS攻擊,你不應該僅僅爲擔心
script
標籤,有人可能會這樣利用它:<a href="http://anywhere.com" onClick="alert(1);">test</a>
(這是一個非常儘管)。如果你只想要
script
標籤,沒有屬性,要過濾:你應該使用正則表達式改善這一點;使用preg_match'es和preg_replaces(或只有preg_replaces),您可以匹配和/或替換腳本標記及其屬性。甚至有更多的保護措施抵制XSS。
編輯:或者甚至像
/<script>(.+)<\/script>/
這樣的正則表達式,然後將括號中的內容存儲到變量中,然後將其打印出來。來源
2011-09-30 13:11:50 Mido
不是真的這樣工作!使用正則表達式! – B4NZ41
試試這個同志..
結果
來源
2014-01-13 23:43:27 B4NZ41
簡單的方法是使用StripTags。
轉到StripTags github並通過作曲家下載或安裝。 這個類有一個方法叫
only
,爲你做到這一點!來源
2016-09-24 10:01:44