使用PHP进行SRV记录查找

ada*_*dam 3 php dns srv

如果你输入

nslookup -type=SRV _xmpp-server._tcp.gmail.com
Run Code Online (Sandbox Code Playgroud)

(或在OSX中使用dig命令),您可以获得与谷歌聊天相关的一些SRV记录

我想在PHP中复制这个功能,有没有人有任何好主意如何做到这一点?

我想避免使用exec(),因为这不会在OSX/*NIX/WINDOWS上返回100%标准响应

谢谢!

Tom*_*lak 9

dns_get_record().根据文档,它可以采用一个int $type参数,它引用一组常数,其中一个是常数DNS_SRV.


Tom*_*igh 8

你可以使用Pear Net_DNS.我设法让它在Linux上工作,但没有在Windows或其他任何方面测试它:

require_once('Net/DNS.php');
$resolver = new Net_DNS_Resolver();
$response = $resolver->query('_xmpp-server._tcp.gmail.com', 'SRV');
if ($response) {
    foreach ($response->answer as $rr) {
        $rr->display();
    }
}
Run Code Online (Sandbox Code Playgroud)

我从他们的文档中修改了示例.希望这可以帮助