как preg_match в php для чисел c с фиксированным диапазоном? - PullRequest
0 голосов
/ 07 февраля 2020

как я могу preg_match в php для чисел c с фиксированным диапазоном?

Я хочу разрешить 8 di git число в текстовом поле без начала 0.

Например, 12345678

Вот мой кусок кода.

if(isset($_POST['submit1'])) {
    if(empty($_POST["phone"]))
 {
  $error .= '<p><label class="text-danger">Please Enter your phone number</label></p>';
 }
 else{
     if(!preg_match("/^[1-9][0-9]{8}$/",$PhNum))
  {
   $error .= '<p><label class="text-danger">Only 8 digit numbers are allowed</label></p>';
  }
 }
}

Спасибо.

1 Ответ

0 голосов
/ 07 февраля 2020

Ваш паттерн немного отклонен, и вы должны ожидать семь цифр после начального di git, который не равен нулю:

if (!preg_match("/^[1-9][0-9]{7}$/", $PhNum)) {
    $error .= '<p><label class="text-danger">Only 8 digit numbers are allowed</label></p>';
}

Концептуально:

[1-9][0-9]{7}  <-- seven digits, for a total of 8 digits
^^^ one digit
...