obf / net-dns
Opsbears 框架网络 DNS 组件
这个包的官方仓库似乎已经不存在,因此该包已被冻结。
1.1.0
2016-04-04 16:12 UTC
Requires
- php: >=5.4
- obf/classloader: 1.*
- obf/foundation: ^0.9.1
- obf/net: ^1.0.1
Requires (Dev)
- apigen/apigen: 4.0.*
- opsbears/coverage-reporter: ^0.0.3
- phing/phing: 2.*
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2020-06-12 18:41:46 UTC
README
安装
使用 composer
要引入 net-dns 及所有依赖项,请运行
composer require obf/net-dns
手动
要手动安装所有依赖项,您需要以下 OBF 包
- obf/classloader
- obf/foundation
- obf/net
要包含自动加载器,包含 autoload.php
。
使用方法
所有 DNS 函数都包含在 OBF\Net\DNS\DNS 类中。使用方法简单
<?php use OBF\Net\DNS\DNS; $records = DNS::lookup('example.com', DNS::TYPE_A);
请注意,DNS 查询可能会返回多个记录。如果您只想查找所有 IP 地址,可以使用 lookupIP()
函数
<?php use OBF\Net\DNS\DNS; $ipAddresses = DNS::lookupIP('example.com');
这将仍然给您一个 IP 地址列表。如果您想缩小范围,您也可以指定 IP 类型
<?php use OBF\Net\DNS\DNS; $ipv4Addresses = DNS::lookupIP('example.com', DNS::LOOKUP_IPV4); $ipv6Addresses = DNS::lookupIP('example.com', DNS::LOOKUP_IPV6);
高级使用
在极不可能的情况下,如果您不想使用 DNS 包来隐藏内置的 PHP DNS 查询功能,但想创建自定义功能,可以使用 DNSLookup
类的非静态版本的 DNS 工具
<?php use OBF\Net\DNS\DNS; $lookup = new DNSLookup(); $ipAddress = $lookup->lookupIP('example.com');
请注意,DNSLookup
支持与 DNS
类相同的调用,但以非静态方式。如果您需要覆盖默认的查找适配器,可以通过实现基于 iDNSLookupAdapter
的自定义适配器来完成
<?php class MyDNSLookupAdapter implements iDNSLookupAdapter { public static function lookup($name, $type = DNSRecord::TYPE_ANY) { // Do some magic here. } }