溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

htmlentities與htmlspecialchars怎么在php中使用

發布時間:2021-04-02 17:05:34 來源:億速云 閱讀:178 作者:Leah 欄目:開發技術

這期內容當中小編將會給大家帶來有關htmlentities與htmlspecialchars怎么在php中使用,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

HTML

我們可以使用htmlentities或者htmlspecialchars函數來過濾html,把特殊字符轉換成對應的html實體。

htmlentities這個函數轉換所有含有對應“html實體”的特殊字符,比如貨幣表示符號歐元英鎊等、版權符號等,htmlspecialchars 只是把某些特殊的字符轉義了, & " ' < >

這2個函數比較傻,默認是不會轉義單引號的

$str='<a href="test.html" rel="external nofollow" >\'測試頁面\'</a><script>alert(213)</script>'; 
//并沒有轉義單引號
echo $str;
echo "<hr/>".PHP_EOL;
echo htmlentities($str);
echo "<hr/>".PHP_EOL;
echo htmlspecialchars($str);

需要設置第2個參數 ENT_QUOTES,具體可以看php手冊

echo htmlentities($str,ENT_QUOTES,'UTF-8'); //單引號也轉義
echo "<hr/>".PHP_EOL;
echo htmlspecialchars($str,ENT_QUOTES,'UTF-8');//單引號也轉義

以上例子并不能區別出htmlentities和htmlspecialchars ,下面換上一些特殊的字符,如歐元等。htmlentities將會對此轉義,htmlspecialchars卻不會

echo htmlentities('? <>"').PHP_EOL;
echo "<hr/>".PHP_EOL;
echo htmlspecialchars('? <>"').PHP_EOL; //?沒有轉義

結論:做一般表單提交的時候完全可以用strip_tags去除html標簽,如果涉及到富文本編輯器需要保留html標簽,可以用htmlspecialchars對提交數據進行過濾。

上述就是小編為大家分享的htmlentities與htmlspecialchars怎么在php中使用了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女