curl to PHP 変換ツール
curlコマンドをPHPのcURLコードへ、ブラウザー内で即座に変換します。コマンドはお使いのデバイスに留まります。
あなたのcurlコマンドはブラウザー内でローカルにPHPへ変換され、アップロードされることはありません。ただし、本番環境の実際のトークンや認証情報をどのツールにも貼り付けないようにしてください。
JavaScript版も必要ですか?cURL to Fetchをお試しください。
curl to PHP 変換ツール について
このcurl to php変換ツールは、curlコマンドを、組み込みのcURL拡張を使うPHPスクリプトに変換します。これは多くのPHP開発者がAPIを呼び出すときにすでに手にしているクライアントです。-X、-H、-d、--data-raw、--json、-u、-b、-G といったフラグを読み取り、単一の curl_setopt_array() 呼び出しで設定された curl_init() ハンドルを出力し、ヘッダーには CURLOPT_HTTPHEADER、ボディには CURLOPT_POSTFIELDS を使います。結果は CURLOPT_RETURNTRANSFER でレスポンスを返し、HTTPステータスコードを表示するため、コントローラー・スクリプト・手早いテストに収まります。ターミナルのcurlリクエストを、各 CURLOPT_ 定数を覚えることなくPHPへ移すのに使ってください。変換はブラウザー内で実行されるため、コマンドとその中のトークンはお使いのデバイス上でローカルに処理され、アップロードされることはありません。
機能
- 単一の curl_setopt_array() 呼び出しで設定された curl_init() ハンドルを出力
- curlフラグから推測したメソッドを CURLOPT_CUSTOMREQUEST に設定
- -H/--header フラグを Name: Value 文字列の CURLOPT_HTTPHEADER 配列にマッピング
- リクエストボディを CURLOPT_POSTFIELDS で送信
- -u/--user をBasic認証ヘッダーに変換し、cookie・user-agent・refererを処理
- -G/--get のデータをクエリ文字列としてURLに付加
- CURLOPT_RETURNTRANSFER でボディを返し、curl_getinfo でステータスを読む
- 結果をコピー、またはワンクリックで request.php としてダウンロード
curl to PHP 変換ツール の使い方
- curlコマンドをcURLコマンドボックスに貼り付けます。
- 出力パネルで生成されたPHPのcURLスクリプトを読みます。
- 調整またはスキップされたフラグがないか警告バナーを確認します。
- 「コピー」をクリックするか、ファイルを request.php としてダウンロードします。
例
入力
curl -X POST https://api.example.com/users \
-H "Content-Type: application/json" \
-d '{"name":"Ada"}'
出力
<?php
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => 'https://api.example.com/users',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => '{"name":"Ada"}',
]);
$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $status . "\n";
echo $response;
ヘッダーは CURLOPT_HTTPHEADER 配列になり、ボディは CURLOPT_POSTFIELDS に入ります。
よくあるエラーとトラブルシューティング
- Call to undefined function curl_init() が出る。 — PHPのcURL拡張が有効になっていません。ext-curl(例:Debian/Ubuntuの php-curl)をインストールまたは有効にし、PHPを再起動してください。
- curl_exec がレスポンスではなく false を返す。 — ハンドルでエラーが発生しています。curl_close の前に curl_error($ch) を追加して原因を確認し、URL・TLS・ヘッダーをチェックしてください。
- CURLOPT_HTTPHEADER のヘッダーがサーバーに無視される。 — 各エントリは単一の "Name: Value" 文字列である必要があります。変換ツールはその形式で整形します。編集する場合はコロンとスペースを残してください。
よくある質問
- curlコマンドをPHPに変換するには?
- curlコマンドを入力ボックスに貼り付けると、変換ツールが右側にPHPのcURLスクリプトを表示します。コピーまたは request.php としてダウンロードできます。
- 出力はPHPのcURL拡張を使いますか、それともGuzzleですか?
- ネイティブのPHP cURL拡張(curl_init、curl_setopt_array、curl_exec)を使うため、インストールするComposerの依存はありません。
- リクエストヘッダーはPHPのコードでどう表現されますか?
- 各 -H ヘッダーは、curl_setopt_array がハンドルに渡す CURLOPT_HTTPHEADER 配列内の単一の "Name: Value" 文字列になります。
- 生成されたPHPでリクエストボディはどこに入りますか?
- ボディは CURLOPT_POSTFIELDS に割り当てられ、CURLOPT_CUSTOMREQUEST がHTTPメソッドを保持するため、POST・PUT・PATCH・DELETE で機能します。
- PHPに変換するとき、私のcurlコマンドはアップロードされますか?
- いいえ。curl to phpの変換は完全にブラウザー内で実行されるため、コマンドやその中の認証情報はお使いのデバイスに留まります。
関連ツール
すべての ArrayKit ツール