mirror of
https://github.com/danog/dns-over-https.git
synced 2024-11-30 04:19:11 +01:00
docs | ||
examples | ||
lib | ||
test | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.php_cs.dist | ||
.travis.yml | ||
appveyor.yml | ||
composer.json | ||
CONTRIBUTING.md | ||
LICENSE | ||
Makefile | ||
phpunit.xml.dist | ||
README.md |
dns
amphp/dns
provides asynchronous DNS name resolution for Amp.
Installation
composer require amphp/dns
Example
<?php
require __DIR__ . '/examples/_bootstrap.php';
use Amp\Dns;
use Amp\Loop;
Loop::run(function () {
$githubIpv4 = yield Dns\resolve("github.com", Dns\Record::A);
pretty_print_records("github.com", $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]);
pretty_print_records("google.com", $firstGoogleResult);
$combinedGoogleResult = yield Amp\Dns\resolve("google.com");
pretty_print_records("google.com", $combinedGoogleResult);
$googleMx = yield Amp\Dns\query("google.com", Amp\Dns\Record::MX);
pretty_print_records("google.com", $googleMx);
});