国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php中stripslashes與addslashes用法區別

2024-05-04 21:57:39
字體:
來源:轉載
供稿:網友

在php中我們常會使用到stripslashes與addslashes了, 下面我來詳細的介紹stripslashes與addslashes使用方法與它們之間的區別.

addslashes

addslashes() 函數在指定的預定義字符前添加反斜杠.

這些預定義字符是:

•單引號 (')

•雙引號 (")

•反斜杠 ()

•NULL

在本例中,我們要向字符串中的預定義字符添加反斜杠:

注釋:默 認情況下,PHP 指令 magic_quotes_gpc 為 on,對所有的 GET、POST 和 COOKIE 數據自動運行 addslashes().不要對已經被 magic_quotes_gpc 轉義過的字符串使用 addslashes(),因為這樣會導致雙層轉義.遇到這種情況時可以使用函數 get_magic_quotes_gpc() 進行檢測.

實例代碼:

  1. /** 
  2. * 判斷是否用addslashes()處理 
  3. * 
  4. * @param String $str 
  5.  
  6. */ 
  7. function str_addslashes($str$db_type='mysql') { 
  8. if(get_magic_quotes_gpc()){ 
  9.    switch($db_type){             
  10. case "access"
  11. $str = stripslashes($str); 
  12. $str = str_replace("'","''",$str);             
  13. break;         
  14. }else { 
  15.          switch($db_type){ 
  16. case "mysql"
  17. $str = addslashes($str); 
  18. break
  19. case "access"
  20. $str = str_replace("'","''",$str); 
  21. break;         
  22. }   
  23. return $str

自定義函數str_addslashes說明:如果我們在提交過程中不知道magic_quotes_gpc是否打開的情況下,可采取如此方式進行處理,為on時mysql數據庫不做處理,而access數據庫依然要先去掉,再將單引號替換為雙引號.為off時mysql數據庫加上

stripslashes()

stripslashes() 函數刪除由 addslashes() 函數添加的反斜杠.

實例代碼:

  1. //提交數據,或者變量準備: 
  2. $Content=addslashes(”這里面是數據,不管有沒單引號或者還是變量”); 
  3. //插入數據到數據庫,代碼省略 
  4. //開始顯示數據 
  5. $Content=”從數據庫讀取的數據”; 
  6. if(get_magic_quotes_gpc()){ 
  7.   $Content=stripslashes($Content);  
  8. echo $Content

區別總結

當magic_quotes_gpc = On時,使用了addslashes()處理后的數據在數據庫中將以’形式保存,如果此時直接輸出的話,就會發現比自己期待的內容多了個,因此stripslashes()出場了,它能把去掉(區別于str_replace(””, “”,$Str)).

當magic_quotes_gpc = Off時,使用了addslashes()處理后的數據在數據庫中將以’形式保存,沒有上面說的有的問題,addslashes()起到插入數據不出錯的作用,如果此時直接輸出的話,數據正常.不需要再用stripslashes().addslashes()和stripslashes()正好是相反的,直接記憶:addslashes()加個,stripslashes()去個

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 红桥区| 田林县| 合山市| 呼伦贝尔市| 泾阳县| 马关县| 贡嘎县| 建始县| 河曲县| 阿勒泰市| 宝山区| 牡丹江市| 盐亭县| 昌邑市| 绍兴县| 南宫市| 龙里县| 乐平市| 广灵县| 衡山县| 牡丹江市| 南平市| 湖北省| 平陆县| 广丰县| 上栗县| 鸡东县| 汶川县| 镇远县| 库车县| 铜山县| 岫岩| 文昌市| 光山县| 徐汇区| 尤溪县| 河曲县| 运城市| 游戏| 东乡| 且末县|