Добрый час, M4xwell.
Ваш $phone всегда нормирован?
Телефон может записываться совершенно различными способами (+7926..., +7(926)..., 8926, 8(926), 8 926)
Предположим, что да. В таком случае, $phone содержит 11 символов, начинающихся на "89".
План прост:
- Формируем массив искомых значений (предполагаю, что все они по 4 символа).
- Выделяем из $phone первые четыре символа с помощью метода substr и записываем в $phoneCode
- Ищем совпадение $phoneCode в массиве искомых значений с помощью метода in_array.
<?php
$successCodes = ["8909", "8961", "8900"]; //Наполнить на свое усмотрение
$phone = "89091234567" // Заполняется динамически, в соответствии с вашей логикой приемки параметров
$phoneCode = substr($phone, 0, 4);
if (in_array($phoneCode, $successCodes)) {
echo "Успех";
} else {
echo "Неудача";
}
Вполне допускаю, что вам потребуется модифицировать перечень допустимых кодов.
В этом случае, я рекомендовал бы вам положить значения в отдельную таблицу БД и искать уже в таблице БД совпадения с кодом.
Если параметр $phone приходит от пользователя в произвольном виде, вам необходимо будет его нормализовать или валидировать.
Также, приведенный здесь код не оформлен отдельным методом, что было бы целесообразно при организации кода вашего приложения с целью предоставления вам свободы выбора подхода к организации кода.
С уважением,
Олег Раев
CIO of Athanor