Add examples for Curl::beforeSend() and MultiCurl::beforeSend()

This commit is contained in:
Zach Borboa
2022-07-01 16:43:22 -05:00
parent bb38a13862
commit 642e232dc2
2 changed files with 56 additions and 0 deletions
+26
View File
@@ -0,0 +1,26 @@
<?php
require __DIR__ . '/../vendor/autoload.php';
use Curl\Curl;
$max_retries = 3;
$curl = new Curl();
$curl->setRetry($max_retries);
$curl->beforeSend(function ($instance) {
echo 'current attempts: ' . $instance->attempts . "\n";
echo 'current retries: ' . $instance->retries . "\n";
echo 'about to make request to ' . $instance->url . "\n";
});
$curl->get('https://httpbin.org/status/503');
if ($curl->error) {
echo 'Error: ' . $curl->errorCode . ': ' . $curl->errorMessage . "\n";
echo 'final attempts: ' . $curl->attempts . "\n";
echo 'final retries: ' . $curl->retries . "\n";
} else {
echo 'Response:' . "\n";
var_dump($curl->response);
}
+30
View File
@@ -0,0 +1,30 @@
<?php
require __DIR__ . '/../vendor/autoload.php';
use Curl\MultiCurl;
$max_retries = 3;
$multi_curl = new MultiCurl();
$multi_curl->setRetry($max_retries);
$multi_curl->beforeSend(function ($instance) {
echo 'current attempts: ' . $instance->attempts . "\n";
echo 'current retries: ' . $instance->retries . "\n";
echo 'about to make request to ' . $instance->url . "\n";
});
$multi_curl->complete(function ($instance) {
if ($instance->error) {
echo 'Error: ' . $instance->errorCode . ': ' . $instance->errorMessage . "\n";
echo 'final attempts: ' . $instance->attempts . "\n";
echo 'final retries: ' . $instance->retries . "\n";
} else {
echo 'Response:' . "\n";
var_dump($instance->response);
}
});
$multi_curl->addGet('https://httpbin.org/status/503');
$multi_curl->start();