Download the PHP package aldin-sxr/ip-format-tools without Composer
On this page you can find all versions of the php package aldin-sxr/ip-format-tools. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download aldin-sxr/ip-format-tools
More information about aldin-sxr/ip-format-tools
Files in aldin-sxr/ip-format-tools
Package ip-format-tools
Short Description A collection of utilities for working with IPv4/IPv6 addresses.
License MIT
Informations about the package ip-format-tools
IP Formatting Tools
This is a small collection of useful methods related to working with IP addresses. Right now, the library provides the ability to convert both IPv4 and IPv6 addresses to long integers, as well as vice versa. Moreover, the library also provides a way to represent IPv4 addresses in IPv6 format (e.g. 34.26.0.75 => ::ffff:221a:4b)
Installation
The library is available via Composer.
composer require aldin-sxr/ip-format-tools
After installing, include vendor/autoload.php
and the IPFormat
namespace to your project.
Please note that the library requires either the GMP or BCMath extension for working with large integers (which are seen in IPv6). GMP is recommended, as it offers a better performance.
Usage
The library offers three main methods****:
IPFormat::ip_to_long()
IPFormat::long_to_ip()
IPFormat::ipv4_to_ipv6()
ip_to_long()
takes an IPv4 or IPv6 address and returns a corresponding long integer.
long_to_ip()
takes a long integer and returns a corresponding IPv4 or IPv6 address.
ipv4_to_ipv6()
takes an IPv4 address and returns in one of the three IPv6 formats.
The compressed
flag (default) returns a compressed IPv6 address (leading zeroes are ommitted, and groups of zeroes are replaced with ::
). The shortened
flag shortens groups of zeroes to a single zero, but does not omit groups from the address. The expanded
flag returns the full, expanded IPv6 address.
Documentation
Library documentation was generated using phpDocumentor, and is available at: https://aldin-sxr.github.io/ip-format-tools/
Testing
All library methods come with several unit tests in PHPUnit, which are available under tests/unit
.
License
The library is licensed under the MIT license. See the LICENSE file for details.