php-tokio/examples/reqwest/test.php

28 lines
596 B
PHP
Raw Normal View History

2023-08-29 15:28:35 +02:00
<?php declare(strict_types=1);
2023-08-27 19:32:52 +02:00
2023-08-27 20:25:28 +02:00
use Reqwest\Client;
2023-08-27 19:32:52 +02:00
2023-08-27 20:25:28 +02:00
use function Amp\async;
use function Amp\Future\await;
require 'vendor/autoload.php';
Client::init();
2023-08-29 15:28:35 +02:00
function test(int $delay): void
{
2023-08-27 20:40:41 +02:00
$url = "https://httpbin.org/delay/$delay";
2023-08-27 20:25:28 +02:00
$t = time();
2023-08-27 20:40:41 +02:00
echo "Making async reqwest to $url that will return after $delay seconds...".PHP_EOL;
Client::get($url);
2023-08-27 20:25:28 +02:00
$t = time() - $t;
echo "Got response from $url after ~".$t." seconds!".PHP_EOL;
};
$futures = [];
2023-08-27 20:40:41 +02:00
$futures []= async(test(...), 5);
$futures []= async(test(...), 5);
$futures []= async(test(...), 5);
2023-08-27 20:25:28 +02:00
2023-08-29 15:28:35 +02:00
await($futures);