potaka/ip-anonymizer

IPv4和IPv6地址匿名化工具

2.0.0 2018-05-13 11:16 UTC

This package is not auto-updated.

Last update: 2024-09-15 04:36:58 UTC


README

Build Status

PHP的IP地址匿名化工具

这是一个用于PHP匿名化IP地址的库。这使得尊重用户隐私变得更容易,同时也使得通过IP地址识别最终用户变得更加困难。在许多情况下,例如在统计分析中,匿名化IP地址可能很有用,因为这些情况下不需要或甚至不希望知道确切的IP地址。

此库支持IPv4和IPv6地址。地址将被匿名化到它们的网络ID。

默认设置将IP地址匿名化到/24子网(IPv4)或/64子网(IPv6),但可以进行自定义。

例如,默认情况下,IPv4地址192.168.178.123被匿名化到192.168.178.0

默认情况下,IPv6地址2a03:2880:2110:df07:face:b00c::1被匿名化到2610:28:3090:3001::

示例

<?php
use Potaka\IpAnonymizer\IpAnonymizer;

$ipAnonymizer = new IpAnonymizer();

var_dump($ipAnonymizer->anonymize('127.0.0.1'));
// returns 127.0.0.0

var_dump($ipAnonymizer->anonymize('192.168.178.123'));
// returns 192.168.178.0

var_dump($ipAnonymizer->anonymize('8.8.8.8'));
// returns 8.8.8.0

var_dump($ipAnonymizer->anonymize('::1'));
// returns ::

var_dump($ipAnonymizer->anonymize('::127.0.0.1'));
// returns ::

var_dump($ipAnonymizer->anonymize('2a03:2880:2110:df07:face:b00c::1'));
// returns 2a03:2880:2110:df07::

var_dump($ipAnonymizer->anonymize('2610:28:3090:3001:dead:beef:cafe:fed3'));
// returns 2610:28:3090:3001::

// Use a custom mask:
$ipAnonymizer->ipv4NetMask = "255.255.0.0";
var_dump($ipAnonymizer->anonymize('192.168.178.123'));
// returns 192.168.0.0

// You can use this class also in a static way:
var_dump(IpAnonymizer::anonymizeIp('192.168.178.123'));
// returns 192.168.178.0

var_dump(IpAnonymizer::anonymizeIp('2610:28:3090:3001:dead:beef:cafe:fed3'));
// returns 2610:28:3090:3001::

许可证

此库使用MIT许可证。请参阅LICENSE文件以获取完整的许可证信息。