/dns

Async DNS resolution built on the amp concurrency framework

Primary LanguagePHPMIT LicenseMIT

dns

Build Status CoverageStatus Unstable License

amphp/dns provides asynchronous DNS name resolution based on the amp concurrency framework.

Required PHP Version

  • PHP 5.5+

Installation

$ composer require amphp/dns:dev-master

Example

<?php

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

Amp\run(function () {
    $githubIpv4 = (yield Amp\Dns\resolve("github.com"));
    var_dump($githubIpv4);

    $googleIpv4 = Amp\Dns\resolve("google.com");
    $googleIpv6 = Amp\Dns\resolve("google.com", $options = [
        "mode" => Amp\Dns\MODE_INET6
    ]);

    $firstGoogleResult = (yield Amp\first([$ipv4Result, $ipv6Result]));
    var_dump($firstGoogleResult);
});