РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
611 of 1392 menu

Правило starts_with

Правило starts_with применяется к валидации строковых полей формы и проверяет, что значение начинается с одной из переданных подстрок. Правило принимает один или несколько аргументов - строки, с которых должно начинаться значение. Если значение начинается хотя бы с одной из указанных подстрок, валидация проходит успешно.

Синтаксис

<?php Validator::make($data, [ 'field' => 'starts_with:substring1,substring2,...' ]); ?>

Пример

Давайте проверим, что код страны начинается с 'US' или 'GB':

<?php namespace AppHttpControllers; use IlluminateHttpRequest; use IlluminateSupportFacadesValidator; class CountryController extends Controller { public function store(Request $request) { $validator = Validator::make($request->all(), [ 'code' => 'starts_with:US,GB' ]); if ($validator->fails()) { return response()->json($validator->errors(), 422); } return response()->json(['message' => 'Valid country code']); } } ?>

Пример

Проверим, что имя пользователя начинается с 'user' или 'admin':

<?php namespace AppHttpControllers; use IlluminateHttpRequest; use IlluminateSupportFacadesValidator; class UserController extends Controller { public function store(Request $request) { $validator = Validator::make($request->all(), [ 'username' => 'starts_with:user,admin' ]); if ($validator->passes()) { $res = "Username is valid"; } else { $res = "Username must start with 'user' or 'admin'"; } return response()->json(['result' => $res]); } } ?>

Результат выполнения кода при значении 'user123':

{"result":"Username is valid"}

Пример

Использование правила в классе FormRequest:

<?php namespace AppHttpRequests; use IlluminateFoundationHttpFormRequest; class ProductRequest extends FormRequest { public function authorize() { return true; } public function rules() { return [ 'sku' => 'required|starts_with:SKU-,PRD-' ]; } public function messages() { return [ 'sku.starts_with' => 'The SKU must start with "SKU-" or "PRD-"' ]; } } ?>

Пример

Проверим, что телефон начинается с '+1' или '+44':

<?php namespace AppHttpControllers; use IlluminateHttpRequest; use IlluminateSupportFacadesValidator; class PhoneController extends Controller { public function validatePhone(Request $request) { $validator = Validator::make($request->all(), [ 'phone' => 'starts_with:+1,+44' ]); if ($validator->fails()) { echo "Validation failed: " . $validator->errors()->first('phone'); } else { echo "Phone number is valid"; } } } ?>

Результат выполнения кода с телефоном '+442071234567':

"Phone number is valid"

Смотрите также

  • правило ends_with,
    которое проверяет окончание строки
  • правило string,
    которое проверяет, что значение является строкой
  • правило required,
    которое проверяет наличие значения
  • правило alpha,
    которое проверяет, что значение содержит только буквы
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить