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