php确定一个float变量有两个小数位

jin*_*gyu 3 php mysql mongodb

MySQL数据imoprt mongo数据库.

price float(15,2) in mysql, mongo is not float(15,2).
Run Code Online (Sandbox Code Playgroud)

我想确定var $price有两个小数位.

例如.100.00是对的,100或100.0是错误的.

eg.1

$price = 100.00;
Run Code Online (Sandbox Code Playgroud)

$price 有两位小数,是的.

eg.2

$price = 100.0;
Run Code Online (Sandbox Code Playgroud)

$price 没有两位小数,这是错的.

Lea*_*dro 5

我喜欢使用正则表达式来做这些事情

function validateTwoDecimals($number)
{
   if(preg_match('/^[0-9]+\.[0-9]{2}$/', $number))
     return true;
   else
     return false;
}
Run Code Online (Sandbox Code Playgroud)

(感谢Fred-ii-进行更正)

  • 你不应该使用`ereg`它已被弃用.http://php.net/manual/en/function.ereg.php (4认同)
  • 实际上,你错过了分隔符.应该是`preg_match('/ ^ [0-9] + \.[0-9] {2} $ /'`作为一个例子http://stackoverflow.com/a/1374920/ (2认同)
  • 这是很好的Leandro,我只是来帮助.+1 (2认同)