Home  >  Article  >  Backend Development  >  PHP method to determine whether it is a number or character type

PHP method to determine whether it is a number or character type

WBOY
WBOYOriginal
2016-07-25 08:58:011639browse
This article introduces how to determine whether it is a number or a character type in PHP programming. Friends in need can refer to it.

First, php regularizes to verify whether the string is a number. method one: Using regular expressions to verify whether it is a number in PHP is very simple, just master the basic regular expressions. For example:

<?php
/**
* 正则验证数字类型
* edit by bbs.it-home.org
*/
if($str)
{
  if(eregi("^[0-9]+$",$str))
  {
    $str=(int)$str;
  }
  else
  {
    echo "获取到的数据不是有效的数字类型,操作将停止!";
    exit();
  }
}
else
{
  echo "需要验证的数据为空,操作停止!";
  exit();
}
?>

Method 2: Key parameters must be filtered. For example, digital regular filtering:

<?php
if(preg_match(“/^\d*$/”,$fgid)) echo(‘是数字’);
else echo(‘不是数字’);
//注:$fgid为null 是为true
或用函数
if(is_numeric($fgid)) echo(‘是数字’);
else echo(‘不是数字’);
?>

The difference between the two methods: is_numeric will also treat decimals as numbers, while the previous regular expression will treat decimal points as characters.

Commonly used regular operations:

Verification number: ^[0-9]*$ Verify n-digit number: ^d{n}$ Verify at least n digits: ^d{n,}$ Verify m-n digit number: ^d{m,n}$ Verify numbers starting with zero and non-zero: ^(0|[1-9][0-9]*)$ Verify a positive real number with two decimal places: ^[0-9]+(.[0-9]{2})?$ Verify positive real numbers with 1-3 decimal places: ^[0-9]+(.[0-9]{1,3})?$ Verify non-zero positive integers: ^+?[1-9][0-9]*$ Verify non-zero negative integers: ^-[1-9][0-9]*$ Verify non-negative integers (positive integers + 0) ^d+$ Validate non-positive integers (negative integers + 0) ^((-d+)|(0+))$ Validate characters of length 3: ^.{3}$ Verify a string consisting of 26 English letters: ^[A-Za-z]+$ Verify a string consisting of 26 uppercase English letters: ^[A-Z]+$ Verify a string consisting of 26 lowercase English letters: ^[a-z]+$ Verify a string consisting of numbers and 26 English letters: ^[A-Za-z0-9]+$ Verify a string consisting of numbers, 26 English letters, or underscores: ^w+$ Verify user password: ^[a-zA-Z]w{5,17}$ The correct format is: starting with a letter, the length is between 6-18, and can only contain characters, numbers and underscores. Verify whether it contains characters such as ^%&‘,;=?$”: [^%&‘,;=?$x22]+ Verify Chinese characters: ^[u4e00-u9fa5],{0,}$ Verify email address: ^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$ Verify InternetURL: ^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$; ^[a-zA-z]+:/ /(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$ Verification phone number: ^((d{3,4})|d{3,4}-)?d{7,8}$: – The correct format is: XXXX-XXXXXXX, XXXX-XXXXXXXX, XXX-XXXXXXX, XXX -XXXXXXXX, XXXXXXX, XXXXXXXX. Verify ID number (15 or 18 digits): ^d{15}|d{}18$ Verify the 12 months of a year: ^(0?[1-9]|1[0-2])$ The correct format is: "01"-"09" and "1" "12" Verify the 31 days of a month: ^((0?[1-9])|((1|2)[0-9])|30|31)$ The correct format is: 01, 09 and 1, 31. Integer: ^-?d+$ Non-negative floating point number (positive floating point number + 0): ^d+(.d+)?$ Positive floating point number^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]* .[0-9]+)|([0-9]*[1-9][0-9]*))$ Non-positive floating point number (negative floating point number + 0) ^((-d+(.d+)?)|(0+(.0+)?))$ Negative floating point number ^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9 ]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$ Floating point number ^(-?d+)(.d+)?

In PHP programming, reasonable use of PHP regularization can sometimes get twice the result with half the effort, and the effect is not as good as usual.



Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn