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

Правило url

Правило url используется для валидации полей формы, которые должны содержать корректный URL-адрес. Оно проверяет, что переданное значение соответствует формату URL согласно спецификации RFC 2396. Это правило полезно для проверки ссылок на сайты, изображения, файлы и другие веб-ресурсы. По умолчанию правило требует наличия протокола (http, https) в начале строки.

Синтаксис

<?php use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; $validator = Validator::make($request->all(), [ 'field' => 'url' ]); ?>

Пример

Давайте провалидируем поле с URL-адресом сайта:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; class SiteController extends Controller { public function store(Request $request) { $validator = Validator::make($request->all(), [ 'website' => 'url' ]); if ($validator->fails()) { $res = $validator->errors()->all(); echo implode(' ', $res); return; } echo "Validation passed"; } } ?>

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

"Validation passed"

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

"The website field must be a valid URL."

Пример

Давайте проверим несколько вариантов URL-адресов в запросе:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; class UrlController extends Controller { public function validateUrl(Request $request) { $validator = Validator::make($request->all(), [ 'url' => 'url' ]); if ($validator->passes()) { $res = "URL is valid"; } else { $res = $validator->errors()->first('url'); } echo $res; } } ?>

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

"https://example.com" => "URL is valid" "http://site.com" => "URL is valid" "ftp://files.com" => "URL is valid" "www.example.com" => "The url field must be a valid URL." "example.com" => "The url field must be a valid URL." "not-a-url" => "The url field must be a valid URL."

Пример

Использование правила url с другими правилами валидации для более строгой проверки:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; class LinkController extends Controller { public function store(Request $request) { $validator = Validator::make($request->all(), [ 'website' => 'required|url|max:255', 'image' => 'nullable|url' ]); if ($validator->fails()) { $res = $validator->errors()->all(); echo implode(' ', $res); return; } echo "All URLs are valid"; } } ?>

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

"All URLs are valid"

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

  • правило required,
    которое делает поле обязательным для заполнения
  • правило email,
    которое проверяет корректность email-адреса
  • правило active_url,
    которое проверяет существование URL-адреса
  • правило regex,
    которое проверяет значение по регулярному выражению
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить