成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

PHP中如何使用htmlspecialchars字符串函數(shù)

PHP中如何使用htmlspecialchars 字符串函數(shù),針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

創(chuàng)新互聯(lián)公司主營青海網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶App定制開發(fā),青海h5小程序定制開發(fā)搭建,青海網(wǎng)站營銷推廣歡迎青海等地區(qū)企業(yè)咨詢

定義和用法

htmlspecialchars - 將特殊字符轉(zhuǎn)換為 HTML 實(shí)體

語法:

htmlspecialchars (string $string [, int $flags = ENT_COMPAT | ENT_HTML401 [, string $encoding = ini_get("default_charset") [, bool $double_encode = TRUE ]]])

某類字符在 HTML 中有特殊用處,如需保持原意,需要用 HTML 實(shí)體來表達(dá)。 本函數(shù)會返回字符轉(zhuǎn)義后的表達(dá)。 如需轉(zhuǎn)換子字符串中所有關(guān)聯(lián)的名稱實(shí)體,使用 htmlentities() 代替本函數(shù)。如果傳入字符的字符編碼和最終的文檔是一致的,則用函數(shù)處理的輸入適合絕大多數(shù) HTML 文檔環(huán)境。 然而,如果輸入的字符編碼和最終包含字符的文檔是不一樣的, 想要保留字符(以數(shù)字或名稱實(shí)體的形式),本函數(shù)以及 htmlentities() (僅編碼名稱實(shí)體對應(yīng)的子字符串)可能不夠用。 這種情況可以使用 mb_encode_numericentity() 代替。

字符替換后
& (& 符號)&
" (雙引號)",除非設(shè)置了 ENT_NOQUOTES
' (單引號)設(shè)置了 ENT_QUOTES 后, ' (如果是 ENT_HTML401) ,或者 ' (如果是 ENT_XML1、 ENT_XHTML 或 ENT_HTML5)。
< (小于)&lt;
> (大于)&gt;

參數(shù)

參數(shù)必需的描述
string待轉(zhuǎn)換的字符串
flags以下一個或多個標(biāo)志的位掩碼,指定如何處理引號以及要使用的文檔類型。 默認(rèn)為ENT_COMPAT | ENT_HTML401。
  • ENT_COMPAT 將轉(zhuǎn)換雙引號并單獨(dú)留下單引號。

  • ENT_QUOTES 將轉(zhuǎn)換雙引號和單引號。

  • ENT_NOQUOTES 將雙引號和單引號保留為未轉(zhuǎn)換。

  • ENT_IGNORE 靜默丟棄無效的代碼單元序列,而不是返回空字符串。 不建議使用此標(biāo)記, 因?yàn)樗? 可能有安全影響。

  • ENT_SUBSTITUTE 替換無效的代碼單元序列為 Unicode 代替符(Replacement Character), U+FFFD (UTF-8) 或者 &#xFFFD; (其他),而不是返回空字符串。

  • ENT_DISALLOWED 為文檔的無效代碼點(diǎn)替換為 Unicode 代替符(Replacement Character): U+FFFD (UTF-8),或 &#xFFFD;(其他),而不是把它們留在原處。 比如以下情況下就很有用:要保證 XML 文檔嵌入額外內(nèi)容時格式合法。

  • ENT_HTML401 將代碼處理為HTML 4.01。

  • ENT_XML1 將代碼處理為XML 1。

  • ENT_XHTML 將代碼處理為XHTML。

  • ENT_HTML5 將代碼處理為HTML 5。

encoding定義轉(zhuǎn)換字符時使用的編碼的可選參數(shù)。如果省略,編碼的默認(rèn)值將根據(jù)使用的PHP版本而變化。在php 5.6及更高版本中,默認(rèn)的_charset配置選項(xiàng)用作默認(rèn)值。php 5.4和5.5將使用utf-8作為默認(rèn)值。PHP的早期版本使用ISO-8859-1。盡管此參數(shù)在技術(shù)上是可選的,但是如果您使用的是php 5.5或更早版本,或者如果您的默認(rèn)_charset配置選項(xiàng)對于給定的輸入設(shè)置不正確,則強(qiáng)烈建議您為代碼指定正確的值。本函數(shù)使用效果上,如果 string 對以下字符編碼是有效的, ISO-8859-1、 ISO-8859-15、 UTF-8、 cp866、 cp1251、 cp1252、 KOI8-R 將具有相同的效果。 也就是說,在這些編碼里, 受 htmlspecialchars() 影響的字符會占據(jù)相同的位置。
double_encode關(guān)閉 double_encode 時,PHP 不會轉(zhuǎn)換現(xiàn)有的 HTML 實(shí)體, 默認(rèn)是全部轉(zhuǎn)換。

encoding支持的字符編碼:

字符集別名描述
ISO-8859-1ISO8859-1西歐,Latin-1
ISO-8859-5ISO8859-5Little used cyrillic charset (Latin/Cyrillic).
ISO-8859-15ISO8859-15西歐,Latin-9。增加歐元符號,法語和芬蘭語字母在 Latin-1(ISO-8859-1) 中缺失。
UTF-8
ASCII 兼容的多字節(jié) 8 位 Unicode。
cp866ibm866, 866DOS 特有的西里爾編碼。本字符集在 4.3.2 版本中得到支持。
cp1251Windows-1251, win-1251, 1251Windows 特有的西里爾編碼。本字符集在 4.3.2 版本中得到支持。
cp1252Windows-1252, 1252Windows 特有的西歐編碼。
KOI8-Rkoi8-ru, koi8r俄語。本字符集在 4.3.2 版本中得到支持。
BIG5950繁體中文,主要用于中國臺灣省。
GB2312936簡體中文,中國國家標(biāo)準(zhǔn)字符集。
BIG5-HKSCS
繁體中文,附帶香港擴(kuò)展的 Big5 字符集。
Shift_JISSJIS, 932日語
EUC-JPEUCJP日語
MacRoman
Mac OS 使用的字符串。
''
空字符串按此順序激活腳本編碼(Zend multibyte),default_charset和當(dāng)前語言環(huán)境(請參閱nl_langinfo()setlocale())的檢測。 不建議。
注意: 其他字符集沒有認(rèn)可。將會使用默認(rèn)編碼并拋出異常。
注意: 本函數(shù)不會轉(zhuǎn)換以上列表以外的實(shí)體。 完整轉(zhuǎn)換請參見 htmlentities()。
注意: 如果 flags 的設(shè)置模糊易混淆,將遵循以下規(guī)則:
  • 當(dāng) ENT_COMPAT、ENT_QUOTES、ENT_NOQUOTES 都沒設(shè)置, 默認(rèn)就是 ENT_COMPAT。

  • 如果設(shè)置不止一個 ENT_COMPAT、 ENT_QUOTES、 ENT_NOQUOTES ,優(yōu)先級最高的是 ENT_QUOTES, 其次是 ENT_COMPAT。

  • 當(dāng) ENT_HTML401、 ENT_HTML5、 ENT_XHTML、 ENT_XML1 都沒設(shè)置,默認(rèn)是 ENT_HTML401。

  • 如果設(shè)置不止一個 ENT_HTML401、 ENT_HTML5、 ENT_XHTML、 ENT_XML1, 優(yōu)先級最高的是 ENT_HTML5 其次是 ENT_XHTML 和 ENT_HTML401。

  • 如果設(shè)置不止一個 ENT_DISALLOWED、 ENT_IGNORE、 ENT_SUBSTITUTE,優(yōu)先級最高的是 ENT_IGNORE, 其次是 ENT_SUBSTITUTE。

$new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
echo $new; 
// &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;

相關(guān)函數(shù)

html_entity_decode() - 將HTML實(shí)體轉(zhuǎn)換為相應(yīng)的字符

get_html_translation_table() - 返回使用 htmlspecialchars 和 htmlentities 后的轉(zhuǎn)換表

htmlspecialchars_decode() - 將特殊的 HTML 實(shí)體轉(zhuǎn)換回普通字符

htmlentities() - 將字符轉(zhuǎn)換為 HTML 轉(zhuǎn)義字符

關(guān)于PHP中如何使用htmlspecialchars 字符串函數(shù)問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。

當(dāng)前文章:PHP中如何使用htmlspecialchars字符串函數(shù)
文章位置:http://jinyejixie.com/article30/iisgpo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站服務(wù)器托管、域名注冊、ChatGPT小程序開發(fā)、網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計
大埔区| 浑源县| 昔阳县| 洪雅县| 育儿| 乌拉特前旗| 开远市| 大安市| 关岭| 沾益县| 康马县| 梓潼县| 抚顺县| 无极县| 江城| 祁连县| 中方县| 安仁县| 长乐市| 凤台县| 台东市| 防城港市| 进贤县| 中西区| 固镇县| 辛集市| 陆丰市| 湖州市| 石泉县| 临邑县| 开封市| 偏关县| 定陶县| 登封市| 盱眙县| 文成县| 长兴县| 宁安市| 望都县| 洛南县| 许昌县|