checkA.php,php window平台模拟checkdnsrr函数检测_php
在php的系統函數中有一個checkdnsrr函數,該函數的作用是根據一個給定的host name(域名)或者IP地址檢查它是否有DNS記錄,目的就是檢驗它是否真實存在。但是該函數僅可以在linux系統下使用,并不支持windows平臺。下面是網上搜集到的一個hack的方法,實現在window平臺上模擬checkdnsrr函數來檢測一個email是否存在的功能!
code
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; } }
1
if(!function_exists('checkdnsrr')){functioncheckdnsrr($host,$type=''){if(!empty($host)){$type=(empty($type))?'MX':$type;exec('nslookup -type='.$type.' '.escapeshellcmd($host),$result);$it=newArrayIterator($result);foreach(newRegexIterator($it,'~^'.$host.'~',RegexIterator::GET_MATCH)as$result){if($result){returntrue;}}}returnfalse;}}
接下來我來介紹一下該函數的參數:
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 window平臺模擬checkdnsrr函數檢測_php》,跪求各位點評,若覺得好的話請收藏本文,by 搞代碼
微信 賞一包辣條吧~
支付寶 賞一聽可樂吧~
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的checkA.php,php window平台模拟checkdnsrr函数检测_php的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 编写一个能够排序的函数模板。_LeetC
- 下一篇: 动态规划算法php,php算法学习之动态