Phone number validation in PHP

后端 未结 3 847
渐次进展
渐次进展 2021-01-23 07:21

I need to validate phone number in PHP. I have made following regex, but I also need to it to accept numbers starting with plus char, how can I do that?

^[0-9]$         


        
相关标签:
3条回答
  • 2021-01-23 08:07

    Try this:

    /^[\+]?([0-9]*)\s*\(?\s*([0-9]{3})?\s*\)?[\s\-\.]*([0-9]{3})[\s\-\.]*([0-9]{4})[a-zA-Z\s\,\.]*[x\#]*[a-zA-Z\.\s]*([\d]*)/
    

    will match:

    +1 ( 111)111-1111, #111

    111-111-1111

    (111)111-1111 x 1

    111.111.1111x1

    etc.

    0 讨论(0)
  • 2021-01-23 08:12

    use this /^(+\d)\s((\d{3})\s*)*\d{3}(-{0,1}|\s{0,1})\d{2}(-{0,1}|\s{0,1})\d{2}$/;

    0 讨论(0)
  • 2021-01-23 08:13

    The regex you provided in your question (^[0-9]$) will only match a one digit phone number.

    At the very least you probably need to add the + modifier to allow one or more digits:

    ^[0-9]+$
    

    To add an optional + at the beginning, you'll need to escape it since + is a special character in regular expressions:

    ^\+?[0-9]+$
    

    And finally, \d is shorthand for [0-9] so you could shorten the expression to

    ^\+?\d+$
    
    0 讨论(0)
提交回复
热议问题