Download the PHP package wikimedia/ip-utils without Composer
On this page you can find all versions of the php package wikimedia/ip-utils. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download wikimedia/ip-utils
More information about wikimedia/ip-utils
Files in wikimedia/ip-utils
Package ip-utils
Short Description Parse, match, and analyze IP addresses and CIDR ranges
License GPL-2.0-or-later
Homepage https://www.mediawiki.org/wiki/IPUtils
Informations about the package ip-utils
IPUtils
Parse, match, and analyze IP addresses and CIDR ranges. This library supports both IPv4 and IPv6.
Additional documentation about the library can be found on mediawiki.org.
Usage
use Wikimedia\IPUtils;
IPUtils::isIPAddress( '::1' );
IPUtils::isIPv4( '124.24.52.13' );
IPSet
can be up to 100x faster than calling IPUtils::isInRange()
over multiple CIDR specs.
use Wikimedia\IPSet;
// This will calculate an optimized data structure for the set
$ipset = new IPSet( [
'208.80.154.0/26',
'2620:0:861:1::/64',
'10.64.0.0/22',
] );
// Run fast checks against the same re-usable IPSet object
if ( $ipset->match( $ip ) ) {
// ...
}
Running tests
composer install --prefer-dist
composer test
History
The IPUtils class started life in 2006 as part of MediaWiki 1.7 (r15572). It was split out of the MediaWiki codebase and published as an independent library during the MediaWiki 1.34 development cycle.
The IPSet class was created by Brandon Black in 2014 as faster alternative to IPUtils::isInRange()
(MediaWiki 1.24, change 131758). It was moved to a library during the MediaWiki 1.26 development cycle (change 221179, change 218384).