lionser / cidr
Library for parse CIDR from ip range.
Installs: 6 676
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/lionser/cidr
Requires
- php: ^8.1
Requires (Dev)
- php-coveralls/php-coveralls: ^2.5
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.7
README
CIDR - Classless Inter-Domain Routing. Wiki
Installing CIDR Library
The recommended way to install CIDR Library is through Composer.
# Install Composer curl -sS https://getcomposer.org/installer | php
Next, run the Composer command to install the latest stable version of CIDR Library:
composer require lionser/cidr
After installing, you need to require Composer's autoloader:
require 'vendor/autoload.php';
You can then later update CIDR Library using composer:
composer update
Usage example:
$netmaskDetectror = new \Lionser\Detector\NetmaskDetector(); $parser = new \Lionser\Parser\CIDRRangeParser($netmaskDetectror); $start = new \Lionser\ValueObject\IP\IPv4('1.0.0.0'); $end = new \Lionser\ValueObject\IP\IPv4('1.0.0.255'); $range = new \Lionser\ValueObject\IP\Range($start, $end); /** @var $cidrs \Lionser\ValueObject\CIDR[] */ $cidrs = $parser->parseRange($range); # Or facade usage /** @var $cidrs \Lionser\ValueObject\CIDR[] */ $cidrs = \Lionser\Parser\CIDRParserFacade::parse('1.0.0.0', '1.0.0.255'); foreach($cidrs as $cidr) { echo $cidr; # '1.0.0.0\24' }