在php的字符串使用時(shí),我們有學(xué)會(huì)一些轉(zhuǎn)義字符,相信大家在記憶這些知識(shí)點(diǎn)的時(shí)候費(fèi)了不少的功夫。本篇我們?yōu)榇蠹規(guī)淼氖亲址霓D(zhuǎn)義方法,涉及到特殊字符的使用,主要有兩種方法可以實(shí)現(xiàn):mysql庫函數(shù)和轉(zhuǎn)義函數(shù)。下面就這兩種方法,在下文中展開詳細(xì)的介紹。
1、轉(zhuǎn)義字符說明
雙引號(hào)中,所有轉(zhuǎn)義字符都可正常使用。
單引號(hào)中,只有單引號(hào)轉(zhuǎn)義字符可以使用("),別的都不可使用。
2、利用mysql庫函數(shù)
PHP版本在7.0之前:
mysql_escape_string ( string $unescaped_string ) : string
PHP版本在7.0之后:
mysqli_real_escape_string ( mysqli $link , string $escapestr ) : string
3、利用轉(zhuǎn)義函數(shù)addslashes()
適合版本PHP4、PHP5、PHP7
addslashes ( string $str ) : string
PHP 5.4 之前 PHP 指令 magic_quotes_gpc 默認(rèn)是 on, 實(shí)際上所有的 GET、POST 和 COOKIE 數(shù)據(jù)都用被 addslashes() 了。 不要對(duì)已經(jīng)被magic_quotes_gpc 轉(zhuǎn)義過的字符串使用 addslashes(),因?yàn)檫@樣會(huì)導(dǎo)致雙層轉(zhuǎn)義。 遇到這種情況時(shí)可以使用函數(shù) get_magic_quotes_gpc() 進(jìn)行檢測(cè)。即get_magic_quotes_gpc()返回false時(shí),再使用addslashes()進(jìn)行特殊字符轉(zhuǎn)義。示例如下
function myaddslashes($data)
{
if(false == get_magic_quotes_gpc())
{
return addslashes($data);//未啟用魔術(shù)引用時(shí),轉(zhuǎn)義特殊字符
}
return $data;
}
總結(jié):
與PHP字符串轉(zhuǎn)義相關(guān)的配置和函數(shù)如下:
1.magic_quotes_runtime
2.magic_quotes_gpc
3.addslashes()和stripslashes()
4.mysql_escape_string()
5.addcslashes()和stripcslashes()
6.htmlentities() 和html_entity_decode()
7.htmlspecialchars()和htmlspecialchars_decode()
到此這篇關(guān)于php字符串中轉(zhuǎn)義成特殊字符實(shí)例講解的文章就介紹到這了,更多相關(guān)php字符串中轉(zhuǎn)義成特殊字符內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- JS PHP字符串截取函數(shù)實(shí)現(xiàn)原理解析
- PHP字符串和十六進(jìn)制如何實(shí)現(xiàn)互相轉(zhuǎn)換
- PHP vsprintf()函數(shù)格式化字符串操作原理解析
- PHP常用字符串函數(shù)用法實(shí)例總結(jié)
- php中創(chuàng)建字符串的變量實(shí)例講解