PHP中很屌但經(jīng)常被各種忽略的過濾器函數(shù)

PHP有些函數(shù)被各種小伙伴用爛了。但是也有一些好函數(shù)經(jīng)常被忽略,以至于有些功能其實PHP內置函數(shù)都能解決,而我們小伙伴依然會通過各種稀奇古怪的方法來繞彎走。這里我們說的最常見的就是過濾。

我寫兩個出來,大家體驗一下。

一、filter_has_var 函數(shù)

譬如你還在用 if(isset($_GET[“name”]) 來判斷GET參數(shù) 中有name這個參數(shù)嗎? 或者post參數(shù)、或者cookie里

filter_has_var(INPUT_GET, ‘name’) 可以直接返回true或false

第一個參數(shù) 可以填 INPUT_GET、 INPUT_POST、 INPUT_COOKIE、 INPUT_SERVER、 INPUT_ENV
看英文你應該知道 是干啥的
二、filter_var 函數(shù)

你還在辛辛苦苦的用正則等方式 來驗證 字符串是否為email格式嗎?

echo filter_var(‘shenyi@hishenyi.com, FILTER_VALIDATE_EMAIL);
如果OK 會返回原值,如果不OK 則返回false

第二個參數(shù)有哪些?

驗證為主:

1、FILTER_VALIDATE_BOOLEAN .當?shù)谝粋€參數(shù)是”1″, “true”, “on” and “yes” 這些字符串時會返回true .否則為false 。所以當用戶輸入一些 類似布爾類型的值時,你就無需一個個去寫if else了。這個參數(shù)幫你搞定自動轉換

2、FILTER_VALIDATE_EMAIL 你懂得 ,上面已經(jīng)演示過了。自己想

3、FILTER_VALIDATE_FLOAT 你懂得

4、FILTER_VALIDATE_INT 你懂得

5、FILTER_VALIDATE_IP 你更加懂

6、FILTER_VALIDATE_MAC 是否是mac地址。(不要認為是mac電腦,你覺得可能嗎?)

7、FILTER_VALIDATE_REGEXP 判斷是否是正則表達式(基于PCRE)。這個很有用哦。尤其做后臺時,管理員可能需要進行正則內容的填寫。你可以用來判斷

8、FILTER_VALIDATE_URL 是否是正規(guī)的URL

三.凈化過濾 (比較多,我挑幾個比較屌的)

1、FILTER_SANITIZE_NUMBER_INT 過濾掉非數(shù)字型的內容。這個很屌哦

echo filter_var(‘fuck123’, FILTER_SANITIZE_NUMBER_INT); 直接返回123 ,你懂的
2、FILTER_SANITIZE_MAGIC_QUOTES 看列子

echo filter_var(“fuck’123”, FILTER_SANITIZE_MAGIC_QUOTES); 會輸出fuck\’123 .好比執(zhí)行了 addslashes()
3 、FILTER_SANITIZE_STRING 看例子

echo filter_var(“<fuck>123</fuck>”, FILTER_SANITIZE_STRING); 會輸出123

echo filter_var ( “fuck < 5 >6”, FILTER_SANITIZE_STRING); 會輸出fuck6 .注意,你如果用 echo strip_tags($str); 是過濾不掉的哦
這個函數(shù)還有第三個參數(shù)的,可以用來控制一些默認值的返回。請親自己動一下手

轉載來源:PHP中很屌但經(jīng)常被各種忽略的過濾器函數(shù) - 沈逸的個人站點

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,502評論 19 139
  • php usleep() 函數(shù)延遲代碼執(zhí)行若干微秒。 unpack() 函數(shù)從二進制字符串對數(shù)據(jù)進行解包。 uni...
    思夢PHP閱讀 2,133評論 1 24
  • filter_var() 函數(shù)通過指定的過濾器過濾變量。如果成功,則返回已過濾的數(shù)據(jù),如果失敗,則返回 false...
    金星show閱讀 1,248評論 0 0
  • PHP常用函數(shù)大全 usleep() 函數(shù)延遲代碼執(zhí)行若干微秒。 unpack() 函數(shù)從二進制字符串對數(shù)據(jù)進行解...
    上街買菜丶迷倒老太閱讀 1,487評論 0 20
  • 西安陣雨 星期六 5月26號 最近我男神又升級了,升級成大叔型了,似乎已經(jīng)很久很久沒因為電視劇著迷了。 哈...
    張晨曦520閱讀 464評論 1 11

友情鏈接更多精彩內容