1
0
mirror of https://github.com/danog/dns.git synced 2024-11-26 20:14:51 +01:00
Go to file
2017-07-12 17:10:04 +02:00
lib Cache DNS records for a maximum of one day 2017-07-12 17:10:04 +02:00
test Add test for PTR lookup by IP 2017-02-05 23:17:40 +01: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 Massive refactor using amp/1.0.0 2015-08-01 22:38:25 -04:00
.php_cs Massive refactor using amp/1.0.0 2015-08-01 22:38:25 -04:00
.travis.yml Delete obsolete coveralls config, add recommended travis_retry 2017-01-25 16:41:31 +01:00
appveyor.yml Reenable 7.1 with retry, only output essential information 2017-01-05 09:59:34 +01:00
composer.json Depend on php-code-coverage 2.2 or higher for the PHPDBG driver 2017-01-25 13:21:19 +01:00
CONTRIBUTING.md Massive refactor using amp/1.0.0 2015-08-01 22:38:25 -04:00
LICENSE Massive refactor using amp/1.0.0 2015-08-01 22:38:25 -04:00
phpunit.xml Massive refactor using amp/1.0.0 2015-08-01 22:38:25 -04:00
README.md Example syntax error fixed (#1) 2016-07-07 14:38:00 +05:30

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", $options = ["types" => Amp\Dns\Record::A]));
    var_dump($githubIpv4);

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

    $firstGoogleResult = (yield Amp\first([$ipv4Result, $ipv6Result]));
    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);
});