加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 从DNS获取IP而不使用gethostbyname?

发布时间:2020-12-13 17:05:13 所属栏目:PHP教程 来源:网络整理
导读:就超时而言,PHP的 gethostbyname()功能似乎不可配置.我想将DNS请求限制为1秒或更短,因为再次显示问题,应该被忽略. 那么,有没有办法使用套接字或cURL进行DNS查询?我能够使用保存服务器资源的PHP流来发出SMTP请求,所以我希望对DNS查询做同样的事情. 解决方法
就超时而言,PHP的 gethostbyname()功能似乎不可配置.我想将DNS请求限制为1秒或更短,因为再次显示问题,应该被忽略.

那么,有没有办法使用套接字或cURL进行DNS查询?我能够使用保存服务器资源的PHP流来发出SMTP请求,所以我希望对DNS查询做同样的事情.

解决方法

对 PHP article的评论有一些设置/包括超时的选项:

<?php
function getAddrByHost($host,$timeout = 3) {
   $query = `nslookup -timeout=$timeout -retry=1 $host`;
   if(preg_match('/nAddress: (.*)n/',$query,$matches))
      return trim($matches[1]);
   return $host;
}
?>

http://www.php.net/manual/en/function.gethostbyname.php#92870

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读