麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > PHP > 正文

php用正則判斷是否為數字的方法

2024-05-04 23:44:26
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了php用正則判斷是否為數字的方法,需要的朋友可以參考下
 

前兩天朋友的一個網站上有人利用php注入提交flash游戲分數,后來找原因才發現是有一位參數沒有做數字判斷導致。

本來保存游戲分數是 game.php?ac=save&fgid=1這個形式來實現,在php網頁里面fgid直接調用,沒有做任何的過濾。很多人利用在fgid=1后面加一個字母(fgid=1a),來實現一些非法操作。

假如  gamlist table 里面有一個游戲  fgid為102
select gname from gamelist where fgid='102′;
select gname from gamelist where fgid='102a';
這樣都可以成功的找到游戲名字gname,這就給很多人提供了可乘之機

建議大家對關鍵的參數必須做過濾。如數字正則過濾

復制代碼代碼如下:

if(preg_match("/^/d*$/",$fgid))    echo('是數字');
else   echo('不是數字');

或者用函數
復制代碼代碼如下:

if(is_numeric($fgid)) echo('是數字');
else echo('不是數字');

 

網上用來判斷id是否為數字的方法

 

復制代碼代碼如下:

$cid = empty($cid)? 1 : intval(preg_replace("/[^-/d]+[^/d]/",'', $cid));

 

這兩種方法的區別是  is_numeric小數也會認為是數字,而前面正則會把小數點當作字符。

附一些常用的正則運算:

驗證數字:^[0-9]*$
驗證n位的數字:^/d{n}$
驗證至少n位數字:^/d{n,}$
驗證m-n位的數字:^/d{m,n}$
驗證零和非零開頭的數字:^(0|[1-9][0-9]*)$
驗證有兩位小數的正實數:^[0-9]+(.[0-9]{2})?$
驗證有1-3位小數的正實數:^[0-9]+(.[0-9]{1,3})?$
驗證非零的正整數:^/+?[1-9][0-9]*$
驗證非零的負整數:^/-[1-9][0-9]*$
驗證非負整數(正整數 + 0)  ^/d+$
驗證非正整數(負整數 + 0)  ^((-/d+)|(0+))$
驗證長度為3的字符:^.{3}$
驗證由26個英文字母組成的字符串:^[A-Za-z]+$
驗證由26個大寫英文字母組成的字符串:^[A-Z]+$
驗證由26個小寫英文字母組成的字符串:^[a-z]+$
驗證由數字和26個英文字母組成的字符串:^[A-Za-z0-9]+$
驗證由數字、26個英文字母或者下劃線組成的字符串:^/w+$
驗證用戶密碼:^[a-zA-Z]/w{5,17}$ 正確格式為:以字母開頭,長度在6-18之間,只能包含字符、數字和下劃線。
驗證是否含有 ^%&‘,;=?$/” 等字符:[^%&‘,;=?$/x22]+
驗證漢字:^[/u4e00-/u9fa5],{0,}$
驗證Email地址:^/w+[-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*$
驗證InternetURL:^http://([/w-]+/.)+[/w-]+(/[/w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$
驗證電話號碼:^(/(/d{3,4}/)|/d{3,4}-)?/d{7,8}$:–正確格式為:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。
驗證身份證號(15位或18位數字):^/d{15}|/d{}18$
驗證一年的12個月:^(0?[1-9]|1[0-2])$ 正確格式為:“01”-“09”和“1”“12”
驗證一個月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$    正確格式為:01、09和1、31。
整數:^-?/d+$
非負浮點數(正浮點數 + 0):^/d+(/./d+)?$
正浮點數   ^(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*))$
非正浮點數(負浮點數 + 0) ^((-/d+(/./d+)?)|(0+(/.0+)?))$
負浮點數  ^(-(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*)))$
浮點數  ^(-?/d+)(/./d+)?



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 色淫视频 | 1024亚洲天堂 | 性 毛片| 激情视频在线播放 | 一级黄色影片在线观看 | 手机国产乱子伦精品视频 | 国产精品欧美久久久久一区二区 | 亚洲国产成人久久一区www妖精 | 久久精品视频一区二区三区 | 免费网站看v片在线a | 欧美第1页| 全黄毛片 | 免费网站看毛片 | 成人做爰高潮片免费视频美国 | 亚洲福利在线视频 | 亚洲操比视频 | 亚洲精品在线观看免费 | 精品国产91久久久久 | 国产精品91在线 | 毛片久久| 国产不卡av在线 | 免费国产在线视频 | 特级毛片免费视频 | 欧美成年人在线视频 | 久久国产在线观看 | 精品国产99久久久久久宅男i | 日韩视频区 | 国产福利视频在线观看 | 韩国精品视频在线观看 | 电影一级毛片 | 午夜热门福利 | 国产一区二区三区视频免费 | av不卡免费在线观看 | 国产一区二区三区四区波多野结衣 | 粉嫩粉嫩一区二区三区在线播放 | 成人在线观看网 | 国产妇女乱码一区二区三区 | 黄色一级片在线免费观看 | 蜜桃91丨九色丨蝌蚪91桃色 | 成人做爽爽爽爽免费国产软件 | 黄色免费在线视频网站 |