PHP函数checkdnsrr用法详解(Windows平台用法)


Posted in PHP onMarch 21, 2016

本文实例讲述了PHP函数checkdnsrr用法。分享给大家供大家参考,具体如下:

在php.net上是这样说的:

(PHP 4, PHP 5)

checkdnsrr — Check DNS records corresponding to a given Internet host name or IP address

译文: checkdnsrr -- 根据一个给定的host name(域名)或者IP地址检查它是否有DNS记录,其实也就是检验它是否存在。

Note:  This function is now available on Windows platforms.

注意:该函数在windows平台不支持

我试了一下,果然,提示没有这个函数。

下面是一个hack的方法,这样,我们在windows上做开发时,也能看到效果了!

if(!function_exists('checkdnsrr')){
  function checkdnsrr($host, $type=''){
    if(!empty($host)){
      $type = (empty($type)) ? 'MX' : $type;
      exec('nslookup -type='.$type.' '.escapeshellcmd($host), $result);
      $it = new ArrayIterator($result);
      foreach(new RegexIterator($it, '~^'.$host.'~', RegexIterator::GET_MATCH) as $result){
        if($result){
          return true;
        }
      }
    }
    return false;
  }
}

接下来我来介绍一下参数:

bool checkdnsrr ( string $host [, string $type = "MX" ] )

第一个参数我们就不说了,就是域名或者ip

第二个参数是解析类型,分别有:

A (Address) 记录     是指定主机名(或域名)对应的IP地址记录。
MX 记录              是指定邮件交换记录(默认)
NS 记录              是指定域名服务器的记录,指定该域名由哪个DNS来进行解析。
SOA记录              一般在辅助的dns服务器里才用到,用来指定谁是主服务器。
PTR记录              从ip指向域名的反向解析记录
CNAME记录            别名记录
AAAA记录             是一个指向IPv6的记录
A6记录               同上
SRV记录              它是DNS服务器的数据库中支持的一种资源记录的类型,一般是为Microsoft的活动目录设置时的应用。
TXT记录              文本信息
ANY记录              任何记录,所有数据类型

这个函数常被我们用于检测email是否真实存在!

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
UCenter Home二次开发指南
May 28 PHP
php中常用的预定义变量小结
May 09 PHP
用PHP实现 上一篇、下一篇的代码
Sep 29 PHP
PHP函数分享之curl方式取得数据、模拟登陆、POST数据
Jun 04 PHP
php中ob_get_length缓冲与获取缓冲长度实例
Nov 20 PHP
php删除文本文件中重复行的方法
Apr 28 PHP
浅谈PHP中foreach/in_array的使用
Nov 02 PHP
如何批量清理系统临时文件(语言:C#、 C/C++、 php 、python 、java )
Feb 01 PHP
php构造方法中析构方法在继承中的表现
Apr 12 PHP
php提交过来的数据生成为txt文件
Apr 28 PHP
PHP实现限制IP访问及提交次数的方法详解
Jul 17 PHP
PHP项目多语言配置平台实现过程解析
May 18 PHP
PHP常见数组函数用法小结
Mar 21 #PHP
老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略
Mar 20 #PHP
Zend Framework入门知识点小结
Mar 19 #PHP
Zend Framework缓存Cache用法简单实例
Mar 19 #PHP
Zend Framework基本页面布局分析
Mar 19 #PHP
Zend Framework连接Mysql数据库实例分析
Mar 19 #PHP
Zend Framework+smarty用法实例详解
Mar 19 #PHP
You might like
PHP中SESSION的注销与清除
2015/04/16 PHP
详解WordPress开发中用于获取分类及子页面的函数用法
2016/01/08 PHP
php array_values 返回数组的值实例详解
2016/11/17 PHP
php操作redis命令及代码实例大全
2020/11/19 PHP
Google Map API更新实现用户自定义标注坐标
2009/07/29 Javascript
js禁止页面复制功能禁用页面右键菜单示例代码
2013/08/29 Javascript
JS事件在IE与FF中的区别详细解析
2013/11/20 Javascript
使用jquery解析XML的方法
2014/09/05 Javascript
JavaScript中对象介绍
2014/12/31 Javascript
JQuery操作元素的css样式
2015/03/09 Javascript
学习javascript面向对象 javascript实现继承的方式
2016/01/04 Javascript
JS遍历数组及打印数组实例分析
2016/01/21 Javascript
js调用webservice构造SOAP进行身份验证
2016/04/27 Javascript
JS全局变量和局部变量最新解析
2016/06/24 Javascript
Node.js Streams文件读写操作详解
2016/07/04 Javascript
jQuery中show与hide方法用法示例
2016/09/16 Javascript
node.js中的事件处理机制详解
2016/11/26 Javascript
vue v-on监听事件详解
2017/05/17 Javascript
vue实现移动端悬浮窗效果
2018/12/01 Javascript
vue实现带复选框的树形菜单
2019/05/27 Javascript
Python中用Ctrl+C终止多线程程序的问题解决
2013/03/30 Python
在Python的Flask框架中实现单元测试的教程
2015/04/20 Python
Python面向对象程序设计构造函数和析构函数用法分析
2019/04/12 Python
树莓派动作捕捉抓拍存储图像脚本
2019/06/22 Python
解决IDEA 的 plugins 搜不到任何的插件问题
2020/05/04 Python
用python-webdriver实现自动填表的示例代码
2021/01/13 Python
公司保密承诺书
2014/03/27 职场文书
幼儿园中班教师寄语
2014/04/03 职场文书
部队反四风对照检查材料
2014/09/26 职场文书
营销与策划实训报告
2014/11/05 职场文书
2015年扶贫帮困工作总结
2015/05/20 职场文书
学校安全管理制度
2015/08/06 职场文书
mysql查询的控制语句图文详解
2021/04/11 MySQL
详解Vue的sync修饰符
2021/05/15 Vue.js
springboot中一些比较常用的注解总结
2021/06/11 Java/Android
使用CSS连接数据库的方式
2022/02/28 HTML / CSS