hyqo / ip-utils
1.0.0
2023-03-05 19:41 UTC
Requires
- php: ^8.0
Requires (Dev)
- phpunit/phpunit: ^9.6
README
Install
composer require hyqo/ip-utils
Methods
IpInterface::isValid(string $ip): bool; IpInterface::isMatch(string $ip, string|array $subnets): bool; IpInterface::normalize(string $ip): string; IpInterface::port(string $ip): ?int;
Usage
use Hyqo\Utils\Ip\Ip; Ip::isValid('192.168.1.0'); //true Ip::isValid('0:0:0:0:0:0:0:1'); //true Ip::isMatch('131.0.72.199', '131.0.72.0/22'); //true Ip::isMatch('131.0.76.199', '131.0.72.0/22'); //false Ip::isMatch('132.0.72.199', ['131.0.72.0/22', '192.168.1.0/31']); //true Ip::normalize('127.0.0.1:80'); //127.0.0.1 Ip::normalize('[::1]:80'); //::1 Ip::port('127.0.0.1:80'); //80 Ip::port('[::1]:80'); //80
The Ip
class automatically detects IP version, but you can use Ipv4
and Ipv6
classes with the same methods as well.