函數addslashes和stripslashes小結

add+slashes[ n.斜槓] :意思是添加斜槓,函數定義:函數在指定的預約義字符前添加反斜槓,其中預約義字符包括{',",\,NULL}四個字符,做用防止MYSQL注入。php

strip+slashes[]:去掉個斜槓,函數定義:函數刪除由 addslashes() 函數添加的反斜槓。mysql

1. 對於PHP magic_quotes_gpc=on的狀況:sql

     咱們能夠不對輸入和輸出數據庫的字符串數據做addslashes()和stripslashes()的操做,數據也會正常顯示。注:若是此時你對輸入的數據做了addslashes()處理,那麼在輸出的時候就必須使用stripslashes()去掉多餘的反斜槓。數據庫

2. 對於PHP magic_quotes_gpc=off 的狀況:cookie

    必須使用addslashes()對輸入數據進行處理,但並不須要使用stripslashes()格式化輸出,由於addslashes()並未將反斜槓一塊兒寫入數據庫,只是幫助mysql完成了sql語句的執行。 函數

  注:magic_quotes_gpc 魔術引用設置,【gpc分別爲get,post,cookie 的縮寫】,若是遇到沒法修改php.in配置時,能夠經過函數get_magic_quotes_gpc() 來得到此時配置狀態,返回0,說明magic_quotes_gpc=off,返回1,說明magic_quotes_gpc=on,根據返回的狀態來作相應的處理。post

相關文章
相關標籤/搜索