2014-02-10 120 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