如何正確運用PHP filter判斷過濾數據
在PHP出現至今,一直在不斷的更新版本,增加新的功能,供我們大家使用,滿足我們的需求。PHP 5.2以及更高的版本,PHP filter被綁定于系統(tǒng),它可以對數據進行自動的過濾和判斷。#t#
***種、PHP filter判斷一個變量的內容是否符合要求
使用函數filter_var,***個參數是要判斷的變量。第二個參數是判斷的要求,FILTER_VALIDATE_EMAIL表示判斷是否符合email格式。如果變量是類似’boy@163.com’的數據,系統(tǒng)就會完整的輸出‘boy@163.com’。如果是錯誤的格式,比如’boy’,就會輸出false。如果沒有填寫表單中的email字段,系統(tǒng)輸出空字符串。
- $email = ‘boy@163.com’;
- echo filter_var($email,
FILTER_VALIDATE_EMAIL);
第二種、PHP filter根據要求過濾一個變量的內容
和上面***的不同是第二個參數使用FILTER_SANITIZE_EMAIL,輸出的結果會不同。如果變量是類似’boy@163.com’的數據,系統(tǒng)就會完整的輸出’boy@163.com’。如果是錯誤的格式,比如’boy-afds3′,只要是數字和字母和劃線等email格式中可以出現的內容,系統(tǒng)同樣會完整的輸出’boy-afds3′。如果變量沒有設置內容,系統(tǒng)輸出空字符串。如果是’boy阿三’,系統(tǒng)會把email格式中不允許的東西去除,輸出’boy’。
- $email = ‘boy@163.com’;
- echo filter_var($email,
FILTER_SANITIZE_EMAIL);
第三種、PHP filter判斷輸入的變量的內容是否符合要求
使用函數filter_input。***個參數表示從那里獲得的數據,INPUT_POST表示通過POST方法傳遞過來,還可以使用INPUT_GET, INPUT_COOKIE, INPUT_SERVER, INPUT_ENV,代表相應的途徑。第二個參數就是數據的名稱。第三個參數代表過濾的要求,FILTER_VALIDATE_EMAIL表示判斷數據是否符合email格式。
假設通過表單的POST過來的一個字段email。如果是類似’boy@163.com’的數據,系統(tǒng)就會完整的輸出’boy@163.com’。如果是錯誤的格式,比如’boy’,就會輸出false。如果沒有填寫表單中的email字段,系統(tǒng)輸出null,也就是空。
- echo filter_input(INPUT_POST,
‘email’, FILTER_VALIDATE_EMAIL);
第四種、PHP filter根據要求過濾輸入的變量的內容
和上面***的不同是第二個參數使用FILTER_SANITIZE_EMAIL,輸出的結果會不同。假設通過表單的POST過來的一個字段email。
如果是類似’boy@163.com’的數據,系統(tǒng)就會完整的輸出’boy@163.com’。如果是錯誤的格式,比如’boy-afds3′,只要是數字和字母和劃線等email格式中可以出現的內容,系統(tǒng)同樣會完整的輸出’boy-afds3′。如果沒有填寫表單中的email字段,系統(tǒng)輸出null,也就是空。如果是’boy阿三’,系統(tǒng)會把email格式中不允許的東西去除,輸出’boy’。
- echo filter_input
(INPUT_POST, ‘email’,
FILTER_SANITIZE_EMAIL);
以上就是PHP filter的具體功能介紹,希望對又需要的朋友有所幫助。