[10.x] Accept protocols as argument for URL validation #47843
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a follow-up of #47770 (see last comment, and also #47381), hopefully this is the right one 😃
This PR makes it possible to specify which protocols are allowed in
Str::isUrl
and in theurl
validation rule.This can be useful in two situations:
https
to force secure links)There is no breaking changes, as the default behavior (when no parameters are used) is the same as current: only the protocols in the existing list are allowed.
Example usage:
Also I think that reducing the default list to only
http
andhttps
(like Symfony, or even justhttps
to force secure links) might be a sensible option, as most of the times a HTTP(S) URL would be expected, but this would be a breaking change formaster
in a separate PR.