02-concurrent.php 582 B

12345678910111213141516171819202122232425
  1. <?php
  2. use React\Dns\Config\Config;
  3. use React\Dns\Resolver\Factory;
  4. require __DIR__ . '/../vendor/autoload.php';
  5. $config = Config::loadSystemConfigBlocking();
  6. if (!$config->nameservers) {
  7. $config->nameservers[] = '8.8.8.8';
  8. }
  9. $factory = new Factory();
  10. $resolver = $factory->create($config);
  11. $names = array_slice($argv, 1);
  12. if (!$names) {
  13. $names = array('google.com', 'www.google.com', 'gmail.com');
  14. }
  15. foreach ($names as $name) {
  16. $resolver->resolve($name)->then(function ($ip) use ($name) {
  17. echo 'IP for ' . $name . ': ' . $ip . PHP_EOL;
  18. }, 'printf');
  19. }