[英]Check if input number is valid in Codeigniter Form Validation
您能幫我驗證我的輸入號碼是否有效。
它可以是整數,也可以是十進制數,但間隔為0.5,因此0.5、1.5、2.5可以,但.2,1.3,2.6無效。
if ((preg_match('/^\d+\.\d+$/',$bkpoints)) || (preg_match('/^\.\d+$/',$bkpoints)))
{ {
if ($bkpoints % 0.5 !== 0)
{
$this->form_validation->set_message('is_bk_decimal','Bk points decimal value should be incremented by 0.5');
return false;
}
}
return true;
您可以使用一個正則表達式^\\d+(?:\\.[05]0*)?$
:
if(preg_match('#^\d+(?:\.[05]0*)?$#', $bkpoints)){
echo 'valid';
}
說明:
^
:行首 \\d+
:一次或多次匹配一個數字 (?:
非捕獲組的開始
\\.
:匹配一個點 [05]
:匹配0
或5
0
:匹配0
零或更多次 )
:非捕獲組的結尾 ?
:使組可選 $
:行尾 嘗試在PHP中使用is_numeric()
函數: http : //php.net/manual/zh/function.is-numeric.php
如果數字是有效數字,則返回true;否則,返回false。
或者,您也可以使用ereg()
函數:
if(ereg("^([0-9]+|[0-9]{1,3}(,[0-9]{3})*)(.[0-9]{1,2})?$", "0.9")){
echo "number";
}else{
echo "not a number";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.