Мне нужно подтвердить URL. Мне нужно разрешить только основные URL-адреса, например:
http://example.com
https://example.com
Мне нужно предотвратить эти URL-адреса:
http://example.com/page/blahblahblah
https://example.com/other/bloa
Как я могу проверить только URL-адрес хоста и протокол?
Сейчас использую вот это:
'url' => 'required|url',
Правило регулярного выражения может выполнить то, что вам нужно, например 'url' => 'required|regex:...', но я не эксперт по регулярным выражениям, поэтому я не уверен, как будет выглядеть шаблон.
Я согласен с @tim, но вы также можете использовать in:url1,url2.
Загрузите regexbuddy или сгенерируйте регулярное выражение для нужного вам случая и добавьте его, как это, в свою проверку '"url" => "required | regex:". $ Regex'






используйте эти методы, затем проверьте значение для проверки https://laravel.com/docs/5.2/helpers#method-url ...
Не тестировал это, но самый простой способ - создать собственное правило проверки.
php artisan make:rule Maindomain
В методе pass () файла app / Rules / Maindomain.php определите правило. В вашем случае что-то вроде:
return substr_count($value, '/') == 2;
Добавьте собственное сообщение об ошибке, если оно вам нужно.
Затем передайте экземпляр объекта правила, например:
$request->validate([
'url' => [new Maindomain],
]);
У меня была такая же проблема, поэтому я изучил регулярные выражения и создал класс для проверки URL-адреса веб-сайта. И пока я смог решить свою проблему с этим.
Вот ссылка: Как проверить URL-адрес в laravel с помощью правила проверки
на основе вашего примера подсчет числа "/" - это все, что вам нужно