2014-02-10 57 views
1

我有一个函数来验证价格。 输入正确PHP preg_match不能用作HTML5模式

150.22 
150,25 

HTML5:

<input type='text' pattern='[1-9]+([,.][0-9]{1,2})?'/> // Works 

但我验证相同的输入在PHP与的preg_match()。

public function price($price){ 
    $pattern = '[1-9]+([,.][0-9]{1,2})?'; 
    return preg_match($pattern, $price); 
} 

而这总是返回我false,这意味着不正确。

你可以在这里测试我的正则表达式:http://regexpal.com/

我在做什么错?

回答

1

在PHP中,您还需要使用regex delimiters

试试这个:

$pattern = '/[1-9]+([,.][0-9]{1,2})?/'; 
+1

是的,这就是问题所在。我会在10分钟内接受你的回答。谢谢。 – user3243925

+0

不客气,很高兴它解决了。请尽可能接受答案。 – anubhava