cURLからPHPコード変換 開発者ガイド

サンプル読込:
POST → api.example.com
<?php

$curl = curl_init();

curl_setopt_array($curl, [
    CURLOPT_URL => 'https://api.example.com/v1/orders',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_FOLLOWLOCATION => false,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_HTTPHEADER => [
        'Content-Type: application/json',
        'Authorization: Bearer sec_tok_99887766'
    ],
    CURLOPT_POSTFIELDS => json_encode({
    "order_id": "ORD-5021",
    "amount": 149.99,
    "currency": "USD",
    "items": [
        {
            "sku": "A10",
            "qty": 2
        }
    ]
})
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #: " . $err;
} else {
    echo $response;
}
HTTPメソッドPOST
対象ホストapi.example.com
ヘッダー数2 Headers
ペイロード長98 bytes

100% Client-Side Privacy

Your API keys, Bearer tokens, passwords, and sensitive production URLs are parsed exclusively inside your local browser memory.

Multi-Client Engine Support

Transpile command lines into Native ext-curl, GuzzleHttp 7+, Laravel 9/10/11 Http Client, or WordPress remote API syntax.

Full Option Parity

Handles HTTP Basic Auth (-u), custom headers (-H), JSON payloads (-d), timeouts, redirect following (-L), and insecure SSL (-k).

技術リファレンス&アーキテクチャガイド

cURLからPHPコード変換 開発者ガイド — リファレンスガイド

cURLコマンドラインをPHPのネイティブext-curl、GuzzleHttpクライアント、Laravel Httpファサード、WordPress向けコードに変換するための実践仕様リファレンス。

主要パラメータ&設定項目

CURLOPT_URLstring

プロトコルおよびクエリパラメータを含む通信先エンドポイントURL。

CURLOPT_RETURNTRANSFERbool (true)

レスポンスを直接標準出力せず、文字列変数として戻り値で受け取る設定。

CURLOPT_POSTbool

リクエストメソッドをHTTP POSTに指定するフラグ。

CURLOPT_POSTFIELDSstring | array

リクエストボディとして送信するJSON文字列またはマルチパート配列データ。

CURLOPT_HTTPHEADERarray<string>

Content-TypeやAuthorizationなど送信するHTTPヘッダーの配列。

プロの活用テクニック&推奨設定

外部APIの遅延でPHPワーカープロセスが枯渇しないよう、必ずCURLOPT_TIMEOUTとCURLOPT_CONNECTTIMEOUTを明示的に設定してください。

PHP 8以降ではjson_encode($data, JSON_THROW_ON_ERROR)を使用して、ペイロード構築時の構文エラーを早期検出しましょう。

本番環境では絶対にCURLOPT_SSL_VERIFYPEERやCURLOPT_SSL_VERIFYHOSTをfalseにしないでください。中間者攻撃(MITM)の危険が生じます。

よくあるトラブルと解決策

Mozilla公式のcacert.pemをダウンロードし、php.iniのcurl.cainfoおよびopenssl.cafileに絶対パスを指定してください。

CURLOPT_HTTPHEADERに'Content-Type: application/json'が正確に設定されているか確認してください。

よくある質問 (FAQ)

cURLコマンド内の認証情報やAPIキーがサーバーに送信されることはありますか?▼

一切ありません。すべてのcURLコマンド解析とPHPコード生成はブラウザ内のJavaScriptで100%完結します。

-u オプションによるBasic認証はどのように変換されますか?▼

-u ユーザー:パスワードはネイティブcURLではCURLOPT_USERPWDに、Guzzleではauthオプションに自動マッピングされます。

生成されるコードはPHPのどのバージョンに対応していますか?▼

PHP 7.4から最新のPHP 8.3+に対応しており、Guzzle選択時はPSR-7 / PSR-18に準拠した最新の書き方が出力されます。

リダイレクトの自動追跡(-L)は反映されますか?▼

はい。-LフラグはCURLOPT_FOLLOWLOCATION => trueやGuzzleのallow_redirects設定として正確に出力されます。

関連するおすすめ開発ツール

すべてのツール →
SQLクエリ圧縮・コメント削除 開発者ガイドdeveloper

SQLクエリの可読コメントや余分な空白を安全に削除し、オプティマイザヒントを保護しながら高スループット環境向けにクエリを軽量化する技術リファレンス。

ツールを開く→
GraphQLクエリ整形・圧縮 開発者ガイドdeveloper

GraphQLのクエリ、ミューテーション、サブスクリプションおよびSDLスキーマの適切なインデント整形、ネスト深度診断、ペイロード最小化に関する技術仕様。

ツールを開く→
TOML・YAML 相互変換 開発者リファレンスdeveloper

TOML v1.0 と YAML 1.2 設定ファイル間のデータ型マッピング、複数行文字列処理、ネスト構造の相互変換仕様とベストプラクティスを網羅した解説書です。

ツールを開く→
SQLからCSV・TSV変換 開発者リファレンスdeveloper

SQLのINSERT INTO文、データベースダンプ、複数行バッチデータをRFC 4180準拠のCSV、TSV、Markdown表形式へ安全に変換するための技術解説です。

ツールを開く→
JSONからPython Pydantic v2・Dataclass変換 開発者リファレンスdeveloper

任意のJSON構造からPython 3.10+対応のPydantic v2 BaseModel、TypedDict、@dataclassを自動生成するための技術仕様とベストプラクティスです。

ツールを開く→
JSONからGo言語 Struct変換 開発者リファレンスdeveloper

任意のJSONデータからGolangの慣用的なStruct構造体定義を自動生成するための技術仕様、タグ付与規則、ネスト分離のベストプラクティスです。

ツールを開く→