php htmlspecialchars()函數
翻譯結果:
英[ˈspeʃl] 美[ˈspɛʃəl]
adj.特殊的;專用的;專門的;重要的
n.專車;特價;特刊;特約稿
複數: specials 比較級: more special 最進階: most special
php htmlspecialchars()函數語法
作用:函數把預先定義的字元轉換為 HTML 實體。預先定義的字元有:& (和號)變成 &," (雙引號)變成 ",' (單引號)變成 ',<(小於)變成 <,> (大於)變成 >。
語法:htmlspecialchars(string,flags,character-set,double_encode)
參數:
參數 | 說明 |
string | 必須,規定要轉換的字串。 |
flags | 可選。規定如何處理引號、無效的編碼以及使用哪種文件類型。可用的引號類型:ENT_COMPAT - 預設。僅編碼雙引號 。 ENT_QUOTES - 編碼雙引號和單引號。 ENT_NOQUOTES - 不編碼任何引號。無效的編碼:ENT_IGNORE - 忽略無效的編碼,而不是讓函數傳回一個空的字串。應盡量避免,因為這可能對安全性有影響。 ENT_SUBSTITUTE - 把無效的編碼替換成一個指定的帶有 Unicode 替代字符 U FFFD(UTF-8)或 FFFD; 的字符,而不是傳回一個空的字串。 ENT_DISALLOWED - 把指定文件類型中的無效代碼點替換成 Unicode 替代字元 U FFFD(UTF-8)或 FFFD;。規定使用的文件類型的附加 flags:ENT_HTML401 - 預設。作為 HTML 4.01 處理程式碼。 ENT_HTML5 - 作為 HTML 5 處理程式碼。 ENT_XML1 - 作為 XML 1 處理程式碼。 ENT_XHTML - 以 XHTML 處理程式碼。 |
character-set | 可選。一個規定了要使用的字元集的字串。允許的值:UTF-8 - 預設。 ASCII 相容多位元組的8 位元UnicodeISO-8859-1 - 西歐ISO-8859-15 - 西歐(加入歐元符號ISO-8859-1 中遺失的法文和芬蘭字母)cp866 - DOS 專用Cyrillic 字元集cp1251 - Windows專用Cyrillic 字元集cp1252 - Windows 專用西歐字元集KOI8-R - 俄語BIG5 - 繁體中文,主要在台灣使用,GB2312 - 簡體中文,國家標準字元集,BIG5-HKSCS - 帶香港的擴展5,Shift_JIS - 日語, EUC-JP - 日語,MacRoman - Mac 作業系統使用的字元集,在PHP 5.4 之前的版本,無法被辨識的字元集將被忽略並由ISO-8859-1 取代。自 PHP 5.4 起,無法被辨識的字元集將被忽略並由 UTF-8 取代。 |
double_encode | 可選,布林值,規定了是否編碼已存在的 HTML 實體。 TRUE - 預設。將對每個實體進行轉換。 FALSE - 不會對已存在的 HTML 實體進行編碼。 |
說明:傳回被轉換的字串,如果 string 包含無效的編碼,則傳回一個空的字串,除非設定了ENT_IGNORE 或者ENT_SUBSTITUTE 標誌。
php htmlspecialchars()函數範例
<?php $i = "<script>alert('hello world')</script>"; $j = htmlspecialchars($i); echo $j; ?>
運行實例»
點擊"運行實例"按鈕查看線上實例
輸出:
<script>alert('hello world')</script>
<?php $new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES); echo $new; // <a href='test'>Test</a> ?>
#運行實例»
#點擊"運行實例" 按鈕查看線上實例
############# #輸出:######
<a href='test'>Test</a>