ホームページ バックエンド開発 PHPチュートリアル 最初から最後まで: PHP 拡張機能 cURL を使用して HTTP リクエストを行う方法

最初から最後まで: PHP 拡張機能 cURL を使用して HTTP リクエストを行う方法

Jul 29, 2023 pm 05:07 PM
curl httpリクエスト 拡大する

最初から最後まで: HTTP リクエストに php 拡張機能 cURL を使用する方法

はじめに:
Web 開発では、多くの場合、サードパーティ API または他のリモート サーバーと通信する必要があります。 cURL を使用して HTTP リクエストを行うのは、一般的で強力な方法です。この記事では、PHP を使用して cURL を拡張して HTTP リクエストを実行する方法を紹介し、いくつかの実用的なコード例を示します。

1. 準備
まず、php に cURL 拡張機能がインストールされていることを確認します。コマンドラインで php -m | grepcurl を実行して、インストールされているかどうかを確認できます。インストールされていない場合は、次の手順に従ってインストールできます。

  1. Linux システムでは、次のコマンドを使用して cURL 拡張機能をインストールします。
    sudo apt-get install php-curl
  2. Windows システムでは、php.ini ファイルを編集し、行 extension=php_curl.dll を見つけて、コメント記号 ( ;)。
  3. Apache や Nginx などの Web サーバーを再起動します。

2. GET リクエストの実行
GET リクエストは、最も一般的な HTTP リクエスト タイプです。 cURL を使用して GET リクエストを実行するサンプル コードを次に示します。

$url = 'https://api.example.com/users';
$ch = curl_init($url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);

if ($response === false) {
    echo '请求失败';
} else {
    echo '响应内容:' . $response;
}
ログイン後にコピー

上記のコードは、最初に cURL セッションを初期化し、リクエストされた URL を設定し、curl_setopt 関数を通じていくつかのオプションを設定します。このうち、CURLOPT_RETURNTRANSFER オプションは、応答結果を画面に直接出力せずに返すように設定するために使用されます。次に、curl_exec 関数を使用してリクエストを送信し、応答結果を取得します。最後に、curl_close 関数を使用してセッションを閉じます。

3. POST リクエストの実行
POST リクエストは主にフォームデータなどのデータをサーバーに送信するために使用されます。以下は、cURL を使用して POST リクエストを実行するサンプル コードです。

$url = 'https://api.example.com/users';
$fields = array(
    'name' => 'John Doe',
    'email' => 'john@example.com'
);

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($fields));

$response = curl_exec($ch);
curl_close($ch);

if ($response === false) {
    echo '请求失败';
} else {
    echo '响应内容:' . $response;
}
ログイン後にコピー

CURLOPT_POST オプションを true に設定することに加えて、上記のコードでは CURLOPT_POSTFIELDS## も使用します。 # POST リクエストのデータを設定するオプション。ここでは、http_build_query 関数を使用して、配列を URL パラメーター形式の文字列に変換します。

4. 応答の処理

HTTP リクエストでは、多くの場合、応答のステータス コードをチェックしてリクエストが成功したかどうかを判断し、返されたデータを処理する必要があります。応答の処理方法を示すサンプル コードを次に示します。

$url = 'https://api.example.com/users';
$ch = curl_init($url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);

curl_close($ch);

if ($httpCode == 200) {
    // 请求成功
    $data = json_decode($response, true);
    // 处理返回的数据
} else {
    // 请求失败
    echo '请求失败,状态码:' . $httpCode;
}
ログイン後にコピー
上記のコードは、

curl_getinfo 関数を使用して、HTTP ステータス コードを含む転送情報を取得します。ステータス コードに基づいてリクエストが成功したかどうかを判断し、要件に従って返されたデータを処理します。

5. 他のオプションを設定する

cURL には、より複雑なニーズを満たすために他の多くのオプションが用意されています。一般的に使用されるオプションは次のとおりです。

    CURLOPT_HEADER: 応答ヘッダーを返すかどうかを設定します。デフォルトは false です。
  1. CURLOPT_TIMEOUT: リクエストのタイムアウトを秒単位で設定します。デフォルトは 0 で、タイムアウト制限がないことを意味します。
  2. CURLOPT_USERAGENT: ブラウザ ID をシミュレートするために User-Agent ヘッダーを設定します。
  3. CURLOPT_SSL_VERIFYPEER: サーバーの SSL 証明書を検証するかどうかを設定します。デフォルトは true です。
6. 概要

この記事では、php を使用して cURL を拡張して HTTP リクエストを行う方法を紹介し、いくつかの実用的なコード例を示します。 cURLの使い方をマスターすれば、リモートサーバーと簡単に通信して必要なデータを取得できるようになります。同時に、リクエストの信頼性を確保するために、セキュリティとエラー処理に注意してください。

最後に、読者の皆様がこの記事を通じて cURL の基礎知識を学び、実際の開発で柔軟に活用していただければ幸いです。読んでくれてありがとう!

以上が最初から最後まで: PHP 拡張機能 cURL を使用して HTTP リクエストを行う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Linux での CURL バージョンの更新に関するチュートリアル! Linux での CURL バージョンの更新に関するチュートリアル! Mar 07, 2024 am 08:30 AM

Linux でカールのバージョンを更新するには、以下の手順に従います。 現在のカールのバージョンを確認します。 まず、現在のシステムにインストールされているカールのバージョンを確認する必要があります。ターミナルを開き、次のコマンドを実行します。curl --version このコマンドは、現在のcurlバージョン情報を表示します。利用可能なcurlのバージョンを確認する:curlを更新する前に、利用可能な最新バージョンを確認する必要があります。 Curl の公式 Web サイト (curl.haxx.se) または関連ソフトウェア ソースにアクセスして、curl の最新バージョンを見つけることができます。 Curl ソース コードをダウンロードする:curl またはブラウザを使用して、選択した CURL バージョンのソース コード ファイル (通常は .tar.gz または .tar.bz2) をダウンロードします。

最初から最後まで: PHP 拡張機能 cURL を使用して HTTP リクエストを行う方法 最初から最後まで: PHP 拡張機能 cURL を使用して HTTP リクエストを行う方法 Jul 29, 2023 pm 05:07 PM

最初から最後まで: HTTP リクエストに php 拡張機能 cURL を使用する方法 はじめに: Web 開発では、多くの場合、サードパーティ API または他のリモート サーバーと通信する必要があります。 cURL を使用して HTTP リクエストを行うのは、一般的で強力な方法です。この記事では、PHP を使用して cURL を拡張して HTTP リクエストを実行する方法を紹介し、いくつかの実用的なコード例を示します。 1. 準備 まず、php に cURL 拡張機能がインストールされていることを確認します。コマンドラインで php-m|grepcurl を実行して確認できます。

原因分析: HTTP リクエスト エラー 504 ゲートウェイ タイムアウト 原因分析: HTTP リクエスト エラー 504 ゲートウェイ タイムアウト Feb 19, 2024 pm 05:12 PM

http リクエスト エラーの理由の簡単な説明: 504GatewayTimeout: ネットワーク通信中、クライアントは HTTP リクエストを送信することでサーバーと対話します。ただし、リクエストの送信プロセス中にエラー メッセージが表示される場合があります。そのうちの 1 つは 504GatewayTimeout エラーです。この記事では、このエラーの原因と解決策について説明します。 504GatewayTimeout エラーとは何ですか?ゲートウェイタイムオ

解決策: HTTP リクエストの処理時のソケット エラー 解決策: HTTP リクエストの処理時のソケット エラー Feb 25, 2024 pm 09:24 PM

http リクエスト エラー: SocketError の解決策 ネットワーク リクエストを行うときに、さまざまなエラーが発生することがよくありますが、その一般的な問題の 1 つが SocketError です。このエラーは、アプリケーションがサーバーとの接続を確立できない場合にスローされます。この記事では、SocketError の一般的な原因と解決策について説明します。まず、Socket とは何かを理解する必要があります。ソケットは、アプリケーションが次のことを可能にする通信プロトコルです。

PHP 関数の拡張機能とサードパーティ モジュール PHP 関数の拡張機能とサードパーティ モジュール Apr 13, 2024 pm 02:12 PM

PHP 関数の機能を拡張するには、拡張機能とサードパーティのモジュールを使用できます。拡張機能は、pecl パッケージ マネージャーを通じてインストールおよび有効化できる追加の関数とクラスを提供します。サードパーティ モジュールは特定の機能を提供し、Composer パッケージ マネージャーを通じてインストールできます。実際の例には、拡張機能を使用して複雑な JSON データを解析したり、モジュールを使用してデータを検証したりすることが含まれます。

Golang を使用して HTTP リクエストのクエリ パラメータを設定する Golang を使用して HTTP リクエストのクエリ パラメータを設定する Jun 02, 2024 pm 03:27 PM

Go で HTTP リクエストのクエリ パラメータを設定するには、クエリ パラメータの名前と値をパラメータとして受け入れる http.Request.URL.Query().Set() メソッドを使用できます。具体的な手順は次のとおりです。 新しい HTTP リクエストを作成します。クエリパラメータを設定するには、Query().Set() メソッドを使用します。リクエストをエンコードします。リクエストを実行します。クエリパラメータの値を取得します(オプション)。クエリパラメータを削除します(オプション)。

PHP Curl で Web ページの 301 リダイレクトを処理するにはどうすればよいですか? PHP Curl で Web ページの 301 リダイレクトを処理するにはどうすればよいですか? Mar 08, 2024 am 11:36 AM

PHPCurl で Web ページの 301 リダイレクトを処理するにはどうすればよいですか? PHPCurl を使用してネットワーク リクエストを送信すると、Web ページから返される 301 ステータス コードが頻繁に発生します。これは、ページが永続的にリダイレクトされたことを示します。この状況を正しく処理するには、いくつかの特定のオプションと処理ロジックを Curl リクエストに追加する必要があります。以下では、PHPCurl で Web ページの 301 リダイレクトを処理する方法を詳しく紹介し、具体的なコード例を示します。 301 リダイレクトの処理原則 301 リダイレクトとは、サーバーが 30 を返すことを意味します。

CENTOS7でmbstring拡張機能をインストールするにはどうすればよいですか? CENTOS7でmbstring拡張機能をインストールするにはどうすればよいですか? Jan 06, 2024 pm 09:59 PM

1.UncaughtError:Calltoundependentfunctionmb_strlen(); 上記のエラーが発生した場合、mbstring 拡張機能がインストールされていないことを意味します; 2. PHP インストール ディレクトリ cd/temp001/php-7.1.0/ext/mbstring に入ります 3. phpize( /usr/local/bin /phpize または /usr/local/php7-abel001/bin/phpize) コマンドを使用して、php 拡張機能 4../configure--with-php-config=/usr/local/php7-abel をインストールします。

See all articles