2013-11-15 65 views
-1

我的網站使用jquery輸入掩碼的電話號碼,所以該模式已解決。我的模式是(123) 456-7890。現在,我想過濾像(000)000-0000,(123)456-7890等虛假輸入。美國和加拿大電話驗證在PHP

有什麼方法可以檢查用戶輸入是否真的是電話號碼而不是假的/虛擬的?

+2

爲什麼你認爲(123)456-7890是假號碼? –

+2

是的,使用正則表達式。如果您需要幫助,請發佈您嘗試過的內容(以及*您的*什麼是假和什麼不是的定義):) –

+1

您可能需要獲取有效區號和本地交易所的列表以驗證如果你想比地區代碼更有效)。這不是一個正則表達式問題(除了可能使用正則表達式來捕獲數字的不同部分以進行驗證)。我不知道任何解決方案來驗證整個電話號碼(即最後4位數字)。 –

回答

1

看看好老梨:Validate_US包。還有就是功能:

Validate_US::phoneNumber(); 

還有Validate_CA加拿大(和其他contrys)

+0

驗證數字格式的好建議。然而,這並不能解決驗證號碼有效性的問題(即地區代碼是否存在?區域代碼內是否存在本地交易所?) –

+1

@MikeBrant您將如何驗證?好的,你可以驗證區號,但是其他數字又是什麼?您只能通過該號碼進行驗證。但是,區號的附加驗證可能是一種改進。 (但我可以想象,在我們這個時代甚至有可能得到一個*假*區號) – hek2mgl

+1

至少你可以驗證提供了一個實際的區號。進一步,您可以驗證該區域代碼內的本地交換是否存在。這將極大地降低您獲得假電話號碼的機會,因爲此時在本地交換機中只剩下10000個選項,其中X%是實際的電話號碼(顯然X會變化)。我不知道驗證電話號碼最後一部分的簡單方法,但我的猜測是對前兩部分進行驗證將得到OP所需的內容(防止大部分虛假電話號碼) –

相關問題