检查是否数字PHP

时间:2014-07-05 12:03:10

标签: php html css

我的问题是,我有一个填写blabla的表格,在我提交后我需要检查var' $ number'仅包含9个数字。这意味着如果它包含至少1个字母或者长度小于或大于9,则应该返回false,否则它应该返回true;

这是我到目前为止所得到的:

if (!is_numeric ($number) { 
//do
} else {
}

第一个问题:此代码应该处理唯一的数字部分,但它不会,它总是返回false。 第二:你们知道如何处理9位数的验证吗?

感谢和抱歉我的英语不好,而不是我的母语:P

3 个答案:

答案 0 :(得分:1)

您的号码可能包含不需要的空格,导致is_numeric()测试无法正常工作 请执行以下操作:$number = trim($number);删除它们。

然后确实这个片段可以检查你的变量是否是一个数字:

if (!is_numeric ($number)) { 
//do
} else {
}

对于数字位数,请执行if语句,以查看您的号码是否在100000000999999999之间

所以完整的代码将是:

$number = trim($number);
if (!is_numeric ($number)) { 
//do
} else {
     if ($number >= 100000000 && $number <= 999999999) {
        // Everything is ok
     } else {

     }
}

答案 1 :(得分:0)

没有理解你的完整问题,因为你的母语:p,但我想你想要这个:

if (is_numeric($number) { 
   if(strlen($number) == 9){
       return true;
   } else {
       return false;
   }
} else {
   echo 'Not a number';
}

答案 2 :(得分:0)

检查它是否包含数字并检查其是否包含9。

$number = '123456789';
if(!preg_match('/^\d{9}$/', $number)) {
    echo 'not ok';
} else {
    echo 'ok';
}