ReactPHP-Dns使用文档(中文翻译)

ReactPHP的DNS组件提供了异步DNS解析功能,包括基本用法、缓存机制和自定义缓存适配器。解析器如`resolve()`和`resolveAll()`用于IP地址查询和获取所有记录。高级用法涉及UdpTransportExecutor和HostsFileExecutor,分别处理UDP传输和主机文件查询。推荐使用composer安装,并支持PHP5.3到PHP7+及HHVM。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Dns

为ReactPHP提供的异步DNS解析。

DNS组件的主要目的是提供异步DNS解析。但是,它实际上是处理DNS消息的工具包,可以很容易地用于创建DNS服务器

基本用法

最基本的用法是通过解析器工厂创建解析器。你只需要给它一个名字,然后你就可以开始解析名字了,兄(xiong)弟(dei).

$loop = React\EventLoop\Factory::create();

$config = React\Dns\Config\Config::loadSystemConfigBlocking();
$server = $config->nameservers ? reset($config->nameservers) : '8.8.8.8';

$factory = new React\Dns\Resolver\Factory();
$dns = $factory->create($server, $loop);

$dns->resolve('igor.io')->then(function ($ip) {
    
    
    echo "Host: $ip\n";
});

$loop->run();

参阅第一个例子

Config类可以被用作加载系统的默认配置。这是一个可能访问文件系统和块的操作。因此,理想情况下,该方法应该在循环开始前只执行一次,而在运行时不重复执行。注意,如果无法加载系统配置,该类可能返回空配置。因此,如果找不到任何名称,您可能希望应用上面的默认名称服务器。

注意,在创建解析实例时,工厂将从文件系统加载主机文件一次。理想情况下,这个方法应该在循环开始钱执行一次,而在运行时不再重复执行。

但还有更多。

缓存

你可以通过配置解析器用CachedExecutor来缓存结果:

$loop = React\EventLoop\Factory::create();

$config = React\Dns\Config\Config::loadSystemConfigBlocking();
$server = $config->nameservers ? reset($config
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值