|
Size: | 13760 |
Storage flags: | no_autoload,compress/gzip (27%) |
Zend\Validator\Ip allows you to validate if a given value is an IP address. It supports the IPv4, IPv6 and IPvFeature definitions.
The following options are supported for Zend\Validator\Ip:
A basic example of usage is below:
1 2 3 4 5 6 | $validator = new Zend\Validator\Ip();
if ($validator->isValid($ip)) {
// ip appears to be valid
} else {
// ip is invalid; print the reasons
}
|
Note
Invalid IP addresses
Keep in mind that Zend\Validator\Ip only validates IP addresses. Addresses like ‘mydomain.com‘ or ‘192.168.50.1/index.html‘ are no valid IP addresses. They are either hostnames or valid URLs but not IP addresses.
Note
IPv6/IPvFuture validation
Zend\Validator\Ip validates IPv6/IPvFuture addresses with regex. The reason is that the filters and methods from PHP itself don’t follow the RFC. Many other available classes also don’t follow it.
Sometimes it’s useful to validate only one of the supported formats. For example when your network only supports IPv4. In this case it would be useless to allow IPv6 within this validator.
To limit Zend\Validator\Ip to one protocol you can set the options allowipv4 or allowipv6 to FALSE. You can do this either by giving the option to the constructor or by using setOptions() afterwards.
1 2 3 4 5 6 | $validator = new Zend\Validator\Ip(array('allowipv6' => false));
if ($validator->isValid($ip)) {
// ip appears to be valid ipv4 address
} else {
// ip is no ipv4 address
}
|
Note
Default behaviour
The default behaviour which Zend\Validator\Ip follows is to allow both standards.
The source code of this file is hosted on GitHub. Everyone can update and fix errors in this document with few clicks - no downloads needed.