在php的系统函数中有一个checkdnsrr函数,该函数的作用是根据一个给定的host name(域名)或者IP地址检查它是否有DNS记录,目的就是检验它是否真实存在。但是该函数仅可以在linux系统下使用,并不支持windows平台。下面是网上搜集到的一个hack的方法,实现在window平台上模拟checkdnsrr函数来检测一个email是否存在的功能!
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记录 任何记录,所有数据类型
您可能感兴趣的文章
- php利用filter函数验证邮箱、url和ip地址的方法
- php获取汉字拼音首字母的函数(真正可以使用的)
- Sphinx在windows下安装使用[支持中文全文检索]
- php判断函数,类,类方法是否存在
- php利用session_set_save_handler()函数将session保存到MySQL数据库中
- windows环境下mysql数据库的主从同步备份步骤
- php获取目录所有文件并将结果保存到数组的程序
- php 模拟get_headers函数
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索php
, 函数
, 域名
, type
, 一个
, get_matches
checkdnsrr
checkdnsrr、php checkdnsrr、email check、check your email、uc user checkemail,以便于您获取更多的相关知识。