tao-test/app/vendor/respect/validation/docs/rules/Domain.md

43 lines
1.1 KiB
Markdown
Raw Normal View History

2022-08-29 20:14:13 +02:00
# Domain
- `v::domain()`
- `v::domain(boolean $tldCheck = true)`
Validates domain names.
```php
v::domain()->validate('google.com');
```
You can skip *top level domain* (TLD) checks to validate internal
domain names:
```php
v::domain(false)->validate('dev.machine.local');
```
This is a composite validator, it validates several rules
internally:
* If input is an IP address, it fails.
* If input contains whitespace, it fails.
* If input does not contain any dots, it fails.
* If input has less than two parts, it fails.
* Input must end with a top-level-domain to pass (if not skipped).
* Each part must be alphanumeric and not start with an hyphen.
* [PunnyCode][] is accepted for [Internationalizing Domain Names in Applications][IDNA].
Messages for this validator will reflect rules above.
***
See also:
* [Ip](Ip.md)
* [Json](Json.md)
* [MacAddress](MacAddress.md)
* [Tld](Tld.md)
* [Url](Url.md)
[PunnyCode]: http://en.wikipedia.org/wiki/Punycode "Wikipedia: Punnycode"
[IDNA]: http://en.wikipedia.org/wiki/Internationalized_domain_name#Internationalizing_Domain_Names_in_Applications "Wikipedia: Internationalized domain name"