ホームページ >バックエンド開発 >PHPチュートリアル >phpカールの機能は何ですか? PHPカールライブラリの応用(コード付き)

phpカールの機能は何ですか? PHPカールライブラリの応用(コード付き)

不言
不言オリジナル
2018-08-08 15:40:071931ブラウズ

WeChat Weibo 公式アカウント、QQ 公式アカウント、マップ、および多くのサードパーティ機能は、HTTP API (アプリケーション) の形式で開発者に提供されます。では、WeChat や Maps などのサードパーティ API をリクエストするにはどうすればよいでしょうか?このとき、cURLを使用する必要がありますが、この記事ではphpのcurlライブラリの応用を紹介します。

cURL は、URL ベースの関数ライブラリとして中国語に翻訳されます。その主な機能は、関連関数を使用してプロトコル要求をシミュレートすることです。

例:

  1. アドレスにデータを送信するフォームをシミュレートする

  2. 検証なしコード ユーザー ログインを完了するためのフォームをシミュレートします。

  3. ファイルをリモート サーバーにアップロードします。

  4. リモートサーバーが提供する特定の機能をリクエストします
    ... ...

curl は、dict、file、ftp、ftps、gopher、http、https、imap、imaps、ldap、ldaps、pop3、pop3s、rtmp、rtsp、をサポートしています。 smtp、smtps、telnet、および tftp プロトコル。
curl は、HTTPS 認証、HTTP POST、HTTP PPUT、FTP アップロード (これは PHP の FTP 拡張機能を使用して完了することもできます)、HTTP フォームベースのアップロード、プロキシ、Cookie、ユーザー名とパスワードの認証もサポートしています。

1.curl リソースの初期使用

文は 1 つだけあり、curl_init 関数が使用されます。このパラメーター メソッドでは、パラメーターを渡す必要があります。 curl の操作リソースを返します。

理由は、後で、curl_setopt を介して、curl のオペレーティング リソース変数にデータをプッシュするためです。

例:

$ch = curl_init();

2. パラメータ設定要求プロトコルアドレス

curl_setopt 関数の詳細な使用方法は次のとおりです。 ### #タイプ###

イラスト ###############関数### curl_setoptカールリソース変数 このパラメータ オプションは、要求された URL アドレスを指定します。
curl_setopt($ch, CURLOPT_URL, "http://www.php.cn");
curl リクエストが対応する結果を返すことを期待します。対応する結果を取得したい場合は、CURLOPT_RETURTRANSFER というパラメーターを設定する必要もあります。 必要な場合、戻り値は 1 です。リクエストがなかった後に返される結果は 0 に設定できます。
パラメータ 1
パラメータ 2 カールパラメータオプション
パラメータ 3 カールパラメータ値
CURLOPT_URL
3. パラメータ設定がリクエスト結果を返すかどうか
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

4. 送信データの設定

getリクエストの場合、送信パラメータの設定は必要ありません。投稿してリクエストを待つ場合は、送信メソッドを投稿メソッドに設定する必要があります。送信するデータを設定します。 ##CURLOPT_POST *POST メソッドを使用する場合は値を 1 に設定し、POST メソッドを使用しない場合は 0 に設定します

CURLOPT_POSTFIELDS

渡されるデータを設定します

//声明使用POST方式来进行发送
    curl_setopt($ch, CURLOPT_POST, 1);
//发送什么数据呢
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

5. その他のパラメータ情報の設定

https の場合、https のセキュリティ証明書を無視する必要がある場合があります。

CURLOPT_SSL_VERIFYPEER および CURLOPT_SSL_VERIFYHOST は、証明書を無視するために false に変更されます。

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

CURLOPT_HEADER このパラメータは http ヘッダー情報を処理するかどうかも決定します。処理を受け取りたくない場合は、この値を 0 に設定できます。

curl_setopt($ch, CURLOPT_HEADER, 0);
さらに、リクエストのタイムアウトを設定することもできます。パラメータは CURLOPT_TIMEOUT です。
curl_setopt($ch, CURLOPT_TIMEOUT, 10);

他にも多くのパラメータがあります。必要に応じて、www.php.cn

6 にアクセスしてください。実行するか、phpcurl を実行して戻り結果を取得します

We 3 番目のステップでは、CURLOPT_RETURNTRANSFER パラメーターの値を 1 に設定します。実行結果にデータがある場合。 curl_exec を使用して実行した後、結果は $output 変数に返されます。

$output = curl_exec($ch);

7.curl リソースを閉じる

curl リソースを閉じます。リソースの種類を考慮して、リソースが開かれると閉じられることを繰り返し強調してきました。

これを使用する必要がない場合は、curl_close を使用して閉じて、すぐにメモリを解放してください。

curl_close($ch);
8. 上記をまとめる

おすすめ関連記事:

curl の概要と php でのcurl

PHP で CURL を使用したエラー報告の解決策 ripcurl phpcurlcurl の下でカールを開く

PHP での CURL の簡単な紹介

以上がphpカールの機能は何ですか? PHPカールライブラリの応用(コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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