synchro/ptrify

生成DNS PTR记录的实用类

v1.0.0 2023-08-05 20:49 UTC

This package is auto-updated.

Last update: 2024-09-05 23:32:59 UTC


README

Synchro/Ptrify Logo

GitHub Workflow Status (main) Total Downloads Latest Version License

Ptrify

本包提供了一组简单实用类,用于将IP地址转换为DNS PTR记录所需的格式,该格式由RFC1035RFC3596定义。虽然这可以通过手动操作完成,但过程略微复杂且容易出错。本包旨在使生成IPv4和IPv6地址的PTR记录变得更容易。

本类不尝试处理子网或通配符,例如在RFC 4472中讨论的内容;它仅适用于单个IP地址。

需要PHP 8.1+

安装

使用Composer安装

composer require synchro/ptrify

用法

use Synchro\Ptrify\Ptrify;

$ptr = Ptrify::ptrify('192.0.2.151');
//$ptr == '151.2.0.192.in-addr.arpa'

$ptr6 = Ptrify::ptrify('2001:db8:f00::12:34ff:fe56:789a');
//$ptr6 == 'a.9.8.7.6.5.e.f.f.f.4.3.2.1.0.0.0.0.0.0.0.0.f.0.8.b.d.0.1.0.0.2.ip6.arpa'

传递无效的IP地址(无论是v4还是v6)将抛出InvalidArgumentException

贡献

有关信息,包括编码标准和如何运行测试,请参阅CONTRIBUTING.md

标志图像基于这张化石木的图片,由Petrifed ForestNPS提供,根据CC BY 2.0

Nuno Maduro基于Skeleton PHP构建的包,在MIT许可证下。