Coroutine::gethostbyname

最后更新于:2022-04-02 06:26:15

# Coroutine::gethostbyname [TOC] 将域名解析为`IP`,基于同步的线程池模拟实现。底层自动进行协程调度。 ~~~ function Coroutine::gethostbyname(string $domain, int $family = AF_INET, double $timeout): string | bool ~~~ * `$domain`域名,如`www.baidu.com` * `$family`默认为`AF_INET`表示返回`IPv4`地址,使用`AF_INET6`时返回`IPv6`地址 * `$timeout`设置超时, 单位为秒 * 成功返回域名对应的`IP`地址,失败返回`false`,可使用`swoole_last_error`获取错误信息 ## 示例 ~~~ use Swoole\Coroutine as co; $ip = co::gethostbyname("www.baidu.com", AF_INET, 0.5); ~~~ ## swoole\_async\_dns\_lookup\_coro 协程`DNS`查询。与`co::gethostbyname`不同,`swoole_async_dns_lookup_coro`是基于`UDP`客户端实现。不支持`/etc/hosts`配置。 函数原型: ~~~ function swoole_async_dns_lookup_coro(string $domain) : string | bool; ~~~ * 查询成功返回对应的`IP`地址 * 失败返回`false`,可使用`swoole_errno`和`swoole_last_error`得到错误信息
';