您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“PHP中htmlentities和htmlspecialchars有哪些區別”,內容詳細,步驟清晰,細節處理妥當,希望這篇“PHP中htmlentities和htmlspecialchars有哪些區別”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
htmlentities跟htmlspecialchars都是用于將字符串的特殊字符中轉成HTML字符實體。只是htmlspecialcharsl轉義的特殊字符集只有5個,
'&' (ampersand) => '&'
'"' (double quote) => '"' when ENT_NOQUOTES is not set.
''' (single quote) => ''' only when ENT_QUOTES is set.
'<' (less than) => '<'
'>' (greater than) => '>'
而htmlentities轉義的特殊字符集是完整的HTML字符實體集。
對于這兩個函數,php手冊上都是英文做的解釋,其中在htmlentities函數的說明部分有這么一段英文:
This function is identical(完全相同的) to htmlspecialchars() in all ways, except with htmlentities(), all characters which have HTML character entity equivalents(HTML
character entity equivalents譯為HTML字符實體等價物) are translated into these entities.
從這句話中我們也可以看出來這兩個函數雖然基本功能差不多,但是還是有細微的差別在里面的。再仔細看htmlspecialchars函數里面的一段話:
Certain characters(其實就是'&', 雙引號(沒有設置ENT_NOQUOTES時才會轉義), 單引號(當且僅當設置ENT_QUOTES才會轉義), '<', '>') have special significance in HTML, and should be represented by HTML entities if they are to preserve their meanings. This function
returns a string with some of these conversions made; the translations made are those most useful for everyday web programming. If you require all HTML character entities to be translated, use htmlentities() instead.
注:使用這兩個函數時最后指明編碼格式哦。
讀到這里,這篇“PHP中htmlentities和htmlspecialchars有哪些區別”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。