PHP函数checkdnsrr用法详解(Windows平台用法)
本文实例讲述了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操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家php程序设计有所帮助。