mirror of
https://github.com/danog/dns.git
synced 2024-11-30 04:29:06 +01:00
315e03ff54
Arrays are clearly not a good API and have resulted in bugs before, even within this package.
1.3 KiB
1.3 KiB
dns
amphp/dns
provides asynchronous DNS name resolution for Amp.
Installation
composer require amphp/dns
Example
<?php
require __DIR__ . '/vendor/autoload.php';
use Amp\Loop;
Loop::run(function () {
$githubIpv4 = (yield Amp\Dns\resolve("github.com", $options = ["types" => Amp\Dns\Record::TYPE_A]));
var_dump($githubIpv4);
$googleIpv4 = Amp\Dns\resolve("google.com", $options = ["types" => Amp\Dns\Record::TYPE_A]);
$googleIpv6 = Amp\Dns\resolve("google.com", $options = ["types" => Amp\Dns\Record::TYPE_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::TYPE_MX));
var_dump($googleMx);
});