PHP学级与年级的转换函数_PHP addslashes()和stripslashes():字符串转义与还原
在 PHP 編程的過程中,經常會遇到這樣的問題,將數據插入到數據庫時可能引起一些問題,比如出現錯誤或者亂碼等。這是因為數據庫將傳入的數據中的字符解釋成控制符。針對這種問題,就需要使用一種標記或者是轉義這些特殊的字符。
在 PHP 中提供了專門處理這些問題的技術,轉義和還原字符串的方法有兩種,一種是手動轉義、還原字符串,另一種是自動轉義、還原字符串。下面分別對這兩種方法進行講解。
1、手動轉義、還原字符串
字符串可以用單引號' '、雙引號" "、定界符<<<3 種方式定義,其中最簡單的方法就是使用單引號' '來定義字符串。當使用字符串時,字符串中很可能也需要使用這幾個定義字符串的符號來作為字符串的一部分,為了避免混淆,就必須在這些符號的前面使用轉移符\。
\是一個轉義符,緊跟在\后面的第一個字符將變為沒有意義或特殊意義的字符。例如,'是定義字符串的特殊符號,而寫成\'后,就失去了它定義字符串的功能了,變為普通的單引號了。我們可以使用echo "\'";來輸出一個單引號,轉義符\不會顯示。
【示例】使用轉義字\對字符串進行轉義。
echo 'Name:\'C語言中文網\'
Url:\'http://c.biancheng.net/php/\'';
?>
運行結果如下:
Name:'C語言中文網'
Url:'http://c.biancheng.net/php/'
對于簡單的字符串,建議采用手動方法進行字符串轉義,而對于數據量較大的字符串,建議采用自動轉義函數實現字符串的轉義。
2、自動轉義、還原字符串
自動轉義、還原字符串可以使用 PHP 提供的 addslashes() 函數和 stripslashes() 函數實現。
1) addslashes() 函數
addslashes() 函數的作用是給字符串加入\,對指定的字符串進行轉義,語法格式如下:
addslashes($str)
其中,$str 為要轉義的字符串。
addslashes() 函數返回的字符串中,為了數據庫查詢等語句的需要,會在某些字符前加上了反斜線,這些字符是單引號'、雙引號"、反斜線\與 NULL。
2) stripslashes() 函數
stripslashes() 函數的作用是還原一個被轉義的字符串,也就是去除在字符串中加入的反斜線,語法格式如下:
stripslashes($str)
其中,$str 為需要還原的字符串。
stripslashes() 函數會返回一個去除轉義反斜線后的字符串(\'轉換為',雙反斜線\\被轉換為單個反斜線\)。
【示例】使用 addslashes() 函數對字符串進行轉義,然后使用 stripslashes() 函數進行還原。
$sql = "select * from php where website='C語言中文網'";
$str = addslashes($sql);
echo $str.'
';
$str = stripslashes($str);
echo $str;
?>
運行結果如下:
select * from php where website=\'C語言中文網\'
select * from php where website='C語言中文網'
總結
以上是生活随笔為你收集整理的PHP学级与年级的转换函数_PHP addslashes()和stripslashes():字符串转义与还原的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 庖丁是什么意思(庖丁)
- 下一篇: 邪不胜正 电影(邪不胜正)