この記事では、curlの概要、curlのインストール、PHPでcurlを使う手順、簡単なcurlコード例、など、必要な場合は友達に参考にしてください
概要
前回の記事「curlとlibcurl入門」ではcurl関連の知識を簡単に紹介しました。この記事では、PHP のカール拡張機能について紹介します。
前回の記事では、curl と libcurl を区別し、関連するいくつかの概念についても説明しました。同時に、PHP のカール拡張機能は実際には libcurl をカプセル化したものであることも学びました。ただし、この記事では、記述の便宜上、これら 2 つの概念を区別しません。したがって、この記事で次に言及するカールは、実際には libcurl を指します。
PHPのcurl拡張機能についてはここではあまり紹介しません。ドキュメントを確認してください。
curlをインストールする
curlのインストールに関しては、ここではあまり詳しく説明しません。プロセスは Windows と Linux で同じです。プラットフォームに応じて適切なインストール方法を選択し、php.ini ファイルでカール拡張機能を有効にします。インストールは他の拡張機能と同じです。
PHPでcurlを使用する手順
PHP では、curl を使用して、Web ページのクローリング、ファイルのアップロード/ダウンロード、シミュレートされたログインなど、さまざまな機能を実行できます。ただし、これらの関数の実装は 4 つの手順に基づいているため、curl の使用は複雑ではありません。
curlを使用する場合、主に以下の4つのステップに分かれます:
1.curlインスタンスを初期化します—curl_init()2.curlの実行時に関連オプションを設定します—curl_setopt()
3.curlクエリを実行します—curl_exec()
4.curlを閉じる—curl_close()
この4つのステップのうち、ステップ1、3、4はどれも簡単です。最も面倒なステップはステップ 2 です。このステップでは、curl オプションを設定します。さまざまな機能を実行するには、これらのオプションを組み合わせる必要があります。
これら 4 つのステップの説明は次のとおりです。
1.curl インスタンスを初期化します。このステップでは、curl_init() 関数を使用します。この関数の戻り値は、このインスタンスを保存するために変数を使用する必要があることがわかります。このインスタンスはすべてのステップで使用されます。具体的なコード例:
コードは次のとおりです:
$curl=curl_init(); //出力リソース(2,curl)
2.curl関連のオプションを設定するcurl_setopt()関数を使用してcurlのオプションを設定します。この関数は 3 つのパラメーターを受け入れます。最初のパラメーターは、設定するカール インスタンス (最初のステップのインスタンス) です。2 番目のパラメーターは、事前定義された定数です。マニュアルで自分で確認してください。 3 番目のパラメータは、設定するオプションの特定の値です。
コード例:
コードは次のとおりです:
curl_setopt ($curl, CURLOPT_URL, "http://www.php.net");
3.curlクエリを実行する このステップでは関数curl_exec()を使用します。この関数は 1 つのパラメータを受け入れます。これは、手順 1 で取得したインスタンスでもあります。
コード例:
コードをコピーします。コードは次のとおりです:
curl_exec ($curl);
4. 現在のcurlを閉じるには、関数curl_close()を使用します。この関数は、ステップ 1 で取得したcurl インスタンスもパラメータとして受け入れます。
コード例:
コードは以下の通りです:
curl_close($curl);
PHP でのcurlの使用は一般に次の4つのステップに従いますが、このうち異なる機能は主に第2ステップの異なる設定を通じて実現されるため、第2ステップが最も面倒であり、場合によっては全員が注意深く理解する必要さえあります。
簡単なcurlコード例
以前、curl を使用する 4 つのステップを紹介しました。ここでは、Web コンテンツを取得する簡単な例を示します。コードは非常に単純ですが、curl をよりよく理解するのに役立つことを願っています。
Baidu ホームページのコンテンツをキャッチ:
コードは次のとおりです:
$curl=curl_init();
curl_setopt ($curl, CURLOPT_URL, "http://www.baidu.com");
$baidu=curl_exec($curl);
curl_close($curl);
このコードを実行すると、ページに Baidu のホームページが表示されます。
概要
今日の時点で、私は5、6つのブログを書きました。学んだ知識はぜひ記録に残したいし、皆さんにも共有したいのですが、自分の言語整理能力があまり高くなく、記事を読んだ人に理解してもらえるかわからないと常々感じていました。今後も言語体系を改善していきたいと思っています。