1
0
mirror of https://github.com/danog/dns.git synced 2024-11-26 20:14:51 +01:00
Go to file
2017-12-15 17:02:47 +01:00
docs Update shared documentation files 2017-12-14 19:16:25 +01:00
examples Improve example formatting and add PTR example 2017-09-12 17:05:40 +02:00
lib Fix #68 - cyclic reference within BasicResolver->gcWatcher 2017-11-07 16:18:49 +01:00
test Fix queries over TCP, add tests 2017-06-29 12:36:09 +02:00
.editorconfig Switch to a new API to enable getting not only the first entry and not only A/AAAA records 2015-09-08 17:27:33 +02:00
.gitattributes Massive refactor using amp/1.0.0 2015-08-01 22:38:25 -04:00
.gitignore Add config test 2017-06-22 23:39:13 +02:00
.gitmodules Update to new shared docs repo 2017-09-27 14:49:02 +02:00
.php_cs.dist Update to PHPUnit 6, update code style 2017-06-17 10:49:54 +02:00
.travis.yml Define target platform in composer.json and fix .travis.yml 2017-12-02 21:11:27 -06:00
appveyor.yml Use PHP 7.2 on AppVeyor 2017-12-15 16:58:35 +01:00
composer.json Allow amphp/file ^0.3 2017-12-15 17:02:47 +01:00
CONTRIBUTING.md Massive refactor using amp/1.0.0 2015-08-01 22:38:25 -04:00
LICENSE Update LICENSE date 2017-06-24 08:14:50 +02:00
Makefile Update to PHPUnit 6, update code style 2017-06-17 10:49:54 +02:00
phpunit.xml.dist Update to PHPUnit 6, update code style 2017-06-17 10:49:54 +02:00
README.md Add documentation and update README 2017-07-06 21:22:39 +02:00

dns

Build Status CoverageStatus License

amphp/dns provides asynchronous DNS name resolution for Amp.

Installation

composer require amphp/dns

Example

<?php

require __DIR__ . '/vendor/autoload.php';

use Amp\Dns;
use Amp\Loop;

Loop::run(function () {
    $githubIpv4 = yield Dns\resolve("github.com", Dns\Record::A);
    var_dump($githubIpv4);

    $googleIpv4 = Amp\Dns\resolve("google.com", Dns\Record::A);
    $googleIpv6 = Amp\Dns\resolve("google.com", Dns\Record::AAAA);

    $firstGoogleResult = yield Amp\Promise\first([$googleIpv4, $googleIpv6]);
    var_dump($firstGoogleResult);
    
    $combinedGoogleResult = yield Amp\Dns\resolve("google.com");
    var_dump($combinedGoogleResult);
    
    $googleMx = yield Amp\Dns\query("google.com", Amp\Dns\Record::MX);
    var_dump($googleMx);
});