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

Правило mac_address

Правило mac_address используется в валидации форм Laravel для проверки, что переданное значение является корректным MAC-адресом (Media Access Control). Правило принимает строку и проверяет её соответствие формату MAC-адреса.

Синтаксис

<?php use IlluminateSupportFacadesValidator; Validator::make($data, [ 'field' => 'mac_address' ]); ?>

Пример

Давайте проверим поле 'mac' на соответствие стандартному формату MAC-адреса:

<?php use IlluminateSupportFacadesValidator; $data = ['mac' => '00:1A:2B:3C:4D:5E']; $rules = ['mac' => 'mac_address']; $validator = Validator::make($data, $rules); if ($validator->passes()) { echo "MAC-address is valid"; } else { echo "MAC-address is invalid"; } ?>

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

"MAC-address is valid"

Пример

Правило mac_address поддерживает различные форматы записи MAC-адресов. Давайте проверим несколько вариантов:

<?php use IlluminateSupportFacadesValidator; $macs = [ '00:1A:2B:3C:4D:5E', '00-1A-2B-3C-4D-5E', '001A.2B3C.4D5E', '00:1A:2B:3C:4D:5G', '00-1A-2B-3C-4D' ]; $rules = ['mac' => 'mac_address']; foreach ($macs as $mac) { $data = ['mac' => $mac]; $validator = Validator::make($data, $rules); if ($validator->passes()) { echo $mac . " is valid"; } else { echo $mac . " is invalid"; } } ?>

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

"00:1A:2B:3C:4D:5E is valid" "00-1A-2B-3C-4D-5E is valid" "001A.2B3C.4D5E is valid" "00:1A:2B:3C:4D:5G is invalid" "00-1A-2B-3C-4D is invalid"

Пример

Использование правила mac_address в классе FormRequest для валидации входящего запроса:

<?php namespace AppHttpRequests; use IlluminateFoundationHttpFormRequest; class MacAddressRequest extends FormRequest { public function authorize(): bool { return true; } public function rules(): array { return [ 'mac' => 'required|mac_address', 'device' => 'required|string|max:255' ]; } public function messages(): array { return [ 'mac.mac_address' => 'The MAC address is not valid', 'mac.required' => 'The MAC address is required' ]; } } ?>

Пример

Валидация MAC-адреса с использованием массива правил и дополнительной проверки:

<?php use IlluminateSupportFacadesValidator; $data = [ 'network' => [ 'mac' => 'AA:BB:CC:DD:EE:FF', 'type' => 'ethernet' ] ]; $rules = [ 'network.mac' => 'required|mac_address', 'network.type' => 'required|in:ethernet,wifi' ]; $validator = Validator::make($data, $rules); if ($validator->fails()) { $errors = $validator->errors(); foreach ($errors->all() as $error) { echo $error; } } else { echo "All data is valid"; } ?>

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

"All data is valid"

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

  • правило ip,
    которое проверяет корректность IP-адреса
  • правило url,
    которое проверяет корректность URL-адреса
  • правило email,
    которое проверяет корректность email-адреса
  • правило uuid,
    которое проверяет корректность UUID
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить