PHP引數過濾的函式

2021-07-08 14:11:45 字數 1619 閱讀 9556

stripslashes

stripslashes — 反引用乙個引用字串

說明string stripslashes ( string $str )

反引用乙個引用字串。

note:

如果 magic_quotes_sybase 項開啟,反斜線將被去除,但是兩個反斜線將會被替換成乙個。

乙個使用範例是使用 php 檢測 magic_quotes_gpc 配置項的 開啟情況(在 php 5.4之 前預設是開啟的)並且你不需要將資料插入到乙個需要轉義的位置(例如資料庫)。例如,你只是簡單地將表單資料直接輸出。

引數str

輸入字串。

返回值返回乙個去除轉義反斜線後的字串(\' 轉換為 ' 等等)。雙反斜線(\\)被轉換為單個反斜線(\)。

參見1.addslashes() - 使用反斜線引用字串

2.get_magic_quotes_gpc() - 獲取當前 magic_quotes_gpc 的配置選項設定

addslashes

(php 4, php 5)

addslashes — 使用反斜線引用字串

說明string addslashes ( string $str )

返回字串,該字串為了資料庫查詢語句等的需要在某些字元前加上了反斜線。這些字元是單引號(')、雙引號(")、反斜線(\)與 nul( null 字元)。

乙個使用 addslashes() 的例子是當你要往資料庫中輸入資料時。 例如,將名字 o'reilly 插入到資料庫中,這就需要對其進行轉義。 強烈建議使用 dbms 指定的轉義函式 (比如 mysql 是 mysqli_real_escape_string() ,postgresql 是 pg_escape_string() ),但是如果你使用的 dbms 沒有乙個轉義函式,並且使用 \ 來轉義特殊字元,你可以使用這個函式。 僅僅是為了獲取插入資料庫的資料,額外的 \ 並不會插入。 當 php 指令 magic_quotes_sybase 被設定成 on 時,意味著插入 ' 時將使用 ' 進行轉義。

php 5.4 之前 php 指令 magic_quotes_gpc 預設是 on, 實際上所有的 get、post 和 cookie 資料都用被 addslashes() 了。 不要對已經被 magic_quotes_gpc 轉義過的字串使用 addslashes() ,因為這樣會導致雙層轉義。 遇到這種情況時可以使用函式 get_magic_quotes_gpc() 進行檢測。 

引數str

要轉義的字元。

返回值返回轉義後的字元。

參見1.stripcslashes() - 反引用乙個使用 addcslashes 轉義的字串

2.stripslashes() - 反引用乙個引用字串

3.addcslashes() - 以 c 語言風格使用反斜線轉義字串中的字元

4.htmlspecialchars() - convert special characters to html entities

5.quotemeta() - 轉義元字符集

6.get_magic_quotes_gpc() - 獲取當前 magic_quotes_gpc 的配置選項設定

php函式引數過多 PHP方法引數過多優化方案

我們在編寫php方法時,通常有若干個引數,就像下面的 class book public function create name,cateid,author params name name,cateid cateid,author author 沒有任何問題。但是,隨著業務的發展,引數可能會不斷...

ThinkPhp輸入引數過濾

i id 0 獲取id引數 自動判斷get或者post,不存在時返回預設值0 i post.name htmlspecialchars 獲取 post name i get.獲取 get 使用系統內建的i函式是避免輸入資料出現安全隱患的重要手段,i函式預設的過濾方法是htmlspecialchars...

C 通用函式 過濾string的空行

需要過濾string中的空行,可以網上搜尋未果。最終自己寫了乙個較為通用的函式。輸入s表示要過濾的string lineend表示行結束符,不同平台的行結束符可能不同。win和linux是nl lf n mac平台則以cr r 結尾。std string deletespacelineofstr c...