PHP htmlspecialchars函數用於將特殊字元轉換為 HTML 實體,其語法為htmlspecialchars(string,flags,character-set,double_encode),參數string 必須,指規定要轉換的字串。
php htmlspecialchars函數怎麼用?
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()函數使用範例1:
<?php $i = "<script>alert('hello world')</script>"; $j = htmlspecialchars($i); echo $j; ?>
輸出:
<script>alert('hello world')</script>
php htmlspecialchars()函數使用範例2:
<?php $new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES); echo $new; // <a href='test'>Test</a> ?>
輸出:
<a href='test'>Test</a>
這篇文章是關於PHP htmlspecialchars函數的介紹,希望對需要的朋友有幫助!
以上是php htmlspecialchars函數怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!