PHP_javascript スキルにおける CURL のいくつかの古典的な応用例
1. cURL リクエストの基本手順:
(1)初期化
(2) URL
などのオプションを設定します
(3) HTML文書の内容を実行して取得する
(4) cURL ハンドルを解放
//1. 初期化
$ch =curl_init();
//2. URL を含むオプションを設定します
curl_setopt($ch, CURLOPT_URL, "http://www.cnblogs.com/it-cen/");
//curl_exec() で取得した情報を直接出力するのではなく、ファイル ストリームの形式で返します
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//ヘッダファイル情報は起動時にデータストリームとして出力されます
curl_setopt($ch, CURLOPT_HEADER, 1);
//3. HTML ドキュメントのコンテンツを実行して取得します
curl_exec($ch);
//4. ハンドルを解放します
curl_close($ch);
echo $ch;
?>
注: 2 番目のステップが最も重要で、curl_setopt() 関数です
エラーをチェックするステートメントを追加できます。ここでは空の出力とブール値 false を区別するために「===false」が使用されていることに注意してください。
If ($output === false) {
echo "cURL エラー:".curl_error($ch);
}
$info =curl_getinfo($ch);
echo '
';<br> print_r($info); echo '';
返されたデータ
[コンテンツタイプ] => charset=utf-8
[http_code] => 200
[ヘッダーサイズ] => 312
[リクエストサイズ] => 61
[ファイル時間] => -1
[ssl_verify_result] => 0
[リダイレクト数] => 0
[合計時間] => 0.172
[名前検索時間] => 0.016
[接続時間] => 0.063
[転送前時間] => 0.063
[サイズ_アップロード] => 0
[size_download] => 14658 //要求されたデータ サイズ [speed_download] => 85220
[速度_アップロード] => 0
[ダウンロードコンテンツの長さ] => 14658
[アップロードコンテンツの長さ] => 0
[転送開始時間] => 0.125
[リダイレクト時間] => 0
[証明書情報] => 配列
(
)
[リダイレクト URL] =>
)
2. この情報は、デバッグに非常に役立ちます
画像を取得する例を見てみましょう:
コードをコピー
header("Content-Type: image/png");
//1. 初期化
$ch =curl_init();
//2. URL を含むオプションを設定します
curl_setopt($ch, , CURLOPT_URL, "http://img04.taabaocdn.com/tfscom/TB1omaTHXXXXXajXVXXtKXbFXXX.png");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
//3. コンテンツを実行して取得します
$res =curl_exec($ch);
//情報を取得します
$info =curl_getinfo($ch);
//4. リソースを解放します
curl_close($ch);
file_put_contents("d:/aa.png", $res);
$size = filesize("d:/aa.png");
if ($size != $info['size_download']) {
echo "ダウンロードしたデータは不完全です。もう一度ダウンロードしてください。";
} else {
echo "データのダウンロードが完了しました";
}
?>
3. POST メソッドを使用して cURL
でデータを送信します
$ch =curl_init();
$data = array('name'=>'kelly', 'age'=>27, 'sex'=>1);
curl_setopt($ch, CURLOPT_URL, "http://localhost.post.php");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//投稿に設定します
curl_setopt($ch, CURLOPT_POST, 1);
//
を post 変数に追加します
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
$res =curl_exec($ch);
curl_close($ch);
echo $res;
?>
この方法を使用して、メッセージを残すことをシミュレートすることも、水を入れるロボットに座ることもできます。
4. cURL を使用してファイルをアップロードします
//アップロードされたデータをリクエストします
$data = array('name'=>'beauty', "upload"=>"@a.zip");
$ch =curl_init();
curl_setopt($ch, CURLOPT_URL, "http://127.0.0.1/Socket/upload_file.php");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$res =curl_exec($ch);
curl_close($ch);
echo $res;
?>
注: ファイルを送信するときは、ファイル名の前に @ を付け、フルパスを使用してください
5. cURL設定項目
実際、cURL には多くの設定オプションがあります。これらのオプションは、setopt() を通じて設定されます。これが読者の役に立つことを願っています。今後は cURL を使用してください:
CURLOPT_AUTOREFERER: location: に基づいてリダイレクトする場合、ヘッダーに Referer: 情報を自動的に設定します
CURLOPT_COOKIESESSION: 有効にすると、cURL はセッション Cookie を厳密に渡し、他の Cookie を無視します
CURLOPT_HEADER: ヘッダー ファイル情報をデータ ストリームとして出力します
CURLOPT_INFILESIZE: アップロードされるファイルのサイズをバイト単位で設定します
CURLOPT_MAXCONNECTS: 許可される接続の最大数
CURLOPT_MAXREDIRS: HTTP リダイレクトの最大数を指定します
CURLOPT_COOKIE: HTTP リクエストの「cookie:」部分の内容を設定します。複数の cookie の後にセミコロンが続き、セミコロンの後にスペースが入ります。
CURLOPT_POSTFIELDS: すべてのデータは HTTP プロトコルの「POST」操作を使用して送信されます。ファイルを送信するには、ファイル名の前に @ プレフィックスを追加し、フルパスを使用します。
......
より具体的な設定項目については、PHP マニュアルを参照してください
cURL は非常に強力なライブラリであり、PHP に固有のものではありません。
このブログ投稿でいくつかの古典的な cURL の例を学習することで、読者が何かを得られることを願っています。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
