PHP code example of ennacx / php-simple-curl
1. Go to this page and download the library: Download ennacx/php-simple-curl library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
ennacx / php-simple-curl example snippets
// まず初期化をします。
$lib = new \Ennacx\SimpleCurl\SimpleCurlLib('https://www.php.net/');
// exec()メソッドでcurlの実行をします。
/** @var \Ennacx\SimpleCurl\Entity\ResponseEntity $result */
$result = $lib->exec();
// エンティティーには各cURLの実行結果を扱いやすくまとめています。
echo $result->result; // (bool)
$lib = new \Ennacx\SimpleCurl\SimpleCurlLib('https://www.php.net/', returnTransfer: true);
/** @var \Ennacx\SimpleCurl\Entity\ResponseEntity $result */
$result = $lib->exec();
echo $result->result; // (bool)
echo $result->responseHeader; // (string) レスポンスヘッダー
echo $result->responseBody; // (string) レスポンスボディー
$postData = ['foo' => 1, 'bar' => 'enjoy PHP', 'baz' => null];
$lib = new \Ennacx\SimpleCurl\SimpleCurlLib('https://www.php.net/', method: CurlMethod::POST);
/** @var \Ennacx\SimpleCurl\Entity\ResponseEntity $result */
$result = $lib
->setPostFields($postData, jsonFlags: JSON_UNESCAPED_SLASHES)
->exec();
echo $result->result; // (bool)
$lib = new \Ennacx\SimpleCurl\SimpleCurlLib('https://www.php.net/');
/** @var \Ennacx\SimpleCurl\Entity\ResponseEntity $result */
$result = $lib->exec();
// HTTPステータスコード
$statusCode = $result->http_code;
$statusCode = $result->http_status_code;
// ダウンロードサイズ
$contentLength = $result->content_length;
$contentLength = $result->download_content_length;
// 並列処理したいcURL対象を列挙します。
// MultiCurlLib使用時は内部でreturnTransferを有効にするため、わざわざ指定する必要はありません。
$sLib1 = new \Ennacx\SimpleCurl\SimpleCurlLib('https://www.php.net/');
$sLib2 = new \Ennacx\SimpleCurl\SimpleCurlLib('https://github.com/');
$sLib3 = new \Ennacx\SimpleCurl\SimpleCurlLib('https://packagist.org/');
// MultiCurlLibに適用し exec() メソッドで実行します。
$mLib = new \Ennacx\SimpleCurl\MultiCurlLib($sLib1, $sLib2, $sLib3);
/** @var array<string, \Ennacx\SimpleCurl\Entity\ResponseEntity> $multiResult */
$multiResult = $mLib->exec();
// それぞれのIDから各結果を取得出来ます。
$s1Result = $multiResult[$sLib1->getId()];
echo $s1Result->result; // (bool) $sLib1のcurl実行結果
echo $s1Result->responseHeader; // (string) $sLib1のレスポンスヘッダー
echo $s1Result->responseBody; // (string) $sLib1のレスポンスボディー
curl_init();
composer