検索

1.CURL は、URL 構文を使用してコマンド ライン モードで動作するオープン ソースのファイル転送ツールです。


2. Unix およびさまざまな Linux ディストリビューションで広く使用されており、DOS、Win32、および Win64 でのバージョンが移植されています。


3. 多くのプロトコルをサポートしています: FTP、FTPS、HTTP、HTTPS、GOPHER、TELNET、DICT、FILE、LDAP。


4.CURL はスウェーデンの CURLl 組織によって開発されました。ソース コードと関連手順を入手するには、http://curl.haxx.se にアクセスしてください。


5.PHP CURL 関数リスト:

関数

説明

curl_close()

cURL セッションを閉じます。

curl_copy_handle()

cURL ハンドルとそのすべてのオプションをコピーします。

curl_errno()

最後のエラー番号を返します。

curl_error()

現在のセッションの最新のエラーを保護する文字列を返します。

curl_escape()

指定された文字列を URL エンコードして、エスケープされた文字列を返します。

curl_exec()

cURL セッションを実行します。

curl_file_create()

CURLFile オブジェクトを作成します。

curl_getinfo()

cURL 接続リソース ハンドルに関する情報を取得します。

curl_init()

cURL セッションを初期化します。

curl_multi_add_handle()

個々の Curl ハンドルを Curl バッチ セッションに追加します。

curl_multi_close()

cURL ハンドルのグループを閉じます。

curl_multi_exec()

現在の cURL ハンドルのサブ接続を実行します。

curl_multi_getcontent()

CURLOPT_RETURNTRANSFER が設定されている場合は、取得した出力のテキスト ストリームを返します。

curl_multi_info_read()

現在解析されている cURL の関連する送信情報を取得します。

curl_multi_init()

新しい cURL バッチ ハンドルを返します。

curl_multi_remove_handle()

Curl バッチ ハンドル リソース内のハンドル リソースを削除します。

curl_multi_select()

すべての cURL バッチでアクティブな接続を待ちます。

curl_multi_setopt()

バッチ cURL 転送オプションを設定します。

curl_multi_strerror()

エラー コードを説明する文字列テキストを返します。

curl_pause()

接続を一時停止して再開します。

curl_reset()

libcurl のセッション ハンドルのすべてのオプションをリセットします。

curl_setopt_array()

cURL 転送セッションのオプションを一括で設定します。

curl_setopt()

cURL 転送オプションを設定します。

curl_share_close()

cURL 共有ハンドルを閉じます。

curl_share_init()

cURL 共有ハンドルを初期化します。

curl_share_setopt()

共有ハンドルの cURL 転送オプションを設定します。

curl_strerror()

エラー コードの説明文字列を返します。

curl_unescape()

URL エンコードされた文字列をデコードします。

curl_version()

cURL のバージョン情報を取得します。


6. CURL開発の基本手順

(1) 初期化:curl_init()

(2) 変数を設定:curl_setopt() またはcurl_setopt_array()

(3) 実行して結果を取得:curl_exec( )

(4) CURL ハンドルを解放します:curl_close()

7.CURLOPT パラメータの概要:

CURLOPT_AUTOREFERER
ヘッダーにリファラー情報を自動的に設定します

CURLOPT_BINARYTRANSFER
CURLOPT_RETURNTRANSFER が有効な場合、データが返されます

CURLOPT_COOKIESESSION
有効にすると、curl はセッション Cookie のみを渡し、他の Cookie を無視します。カールしますすべての Cookie を保存する サーバーに戻ります。セッション Cookie は、サーバー側のセッションが有効かどうかを判断するために使用される Cookie を指します。

CURLOPT_CRLF
有効にすると、Unix の改行文字が復帰文字と改行文字に変換されます。

CURLOPT_DNS_USE_GLOBAL_CACHE
有効にすると、グローバル DNS キャッシュが有効になり、デフォルトは true になります。

CURLOPT_FAILONERROR
HTTP ステータス コードを表示します。デフォルトの動作では、400 以下の数値を持つ HTTP 情報を無視します。

CURLOPT_FILETIME
有効にすると、リモート ドキュメント内の情報の変更が試行されます。結果情報は、curl_getinfo() 関数の CURLINFO_FILETIME オプションを通じて返されます。

CURLOPT_FOLLOWLOCATION
有効にすると、サーバーから返される「Location:」がヘッダーに配置され、再帰的に返される回数を制限するために CURLOPT_MAXREDIRS を使用します。

CURLOPT_FORBID_REUSE
インタラクションの完了後に接続が強制的に切断され、再利用できなくなります。

CURLOPT_FRESH_CONNECT
キャッシュ内の接続を新しい接続に強制的に置き換えます。

CURLOPT_FTP_USE_EPRT

CURLOPT_FTP_USE_EPSV

CURLOPT_FTPAPPEND

CURLOPT_FTPASCII

CURLOPT_FTPLISTONLY

CURLOPT_HEADER
有効にすると、ヘッダー ファイル情報がデータ ストリームとして出力されます。

CURLOPT_HTTPGET
有効にすると、HTTP メソッドは GET に設定されるため、GET は変更された場合にのみ使用されます。

CURLOPT_HTTPPROXYTUNNEL
有効にすると、HTTP プロキシ経由で送信されます。

CURLOPT_MUTE
Curl 関数で変更されたすべてのパラメーターをデフォルト値に戻すことについて話します。

CURLOPT_NETRC
接続が確立されたら、~/.netrc ファイルにアクセスして、リモート サイトに接続するためのユーザー名とパスワード情報を取得します。

CURLOPT_NOBODY
有効にすると、HTML の本文部分が出力されなくなります。

CURLOPT_NOPROGRESS
有効にすると、curl 送信の進行状況バーをオフにします。

CURLOPT_NOSIGNAL
有効にすると、curl によって php に渡されるすべてのシグナルを無視します。この項目は、SAPI マルチスレッド送信時にデフォルトでオンになります。

CURLOPT_POST
有効にすると、フォーム送信と同様に、application/x-www-form-urlencoded と入力して、通常の POST リクエストが送信されます。

CURLOPT_PUT
有効にすると、HTTP で CURLOPT_INFILE と CURLOPT_INFILESIZE を同時に設定する必要があります。

CURLOPT_RETURNTRANSFER
curl_exec() によって取得された情報は、直接出力されるのではなく、ファイル ストリームの形式で返されます。 。

CURLOPT_SSL_VERIFYPEER

CURLOPT_TRANSFERTEXT

CURLOPT_UNRESTRICTED_AUTH
ドメイン名が変更された場合でも、CURLOPT_FOLLOWLOCATION を使用して生成されたヘッダー内の複数の場所にユーザー名とパスワードの情報を継続的に追加します。

CURLOPT_UPLOAD
有効にするとファイル転送を許可します

CURLOPT_VERBOSE
有効にすると、すべての情報が報告され、STDERR または指定された CURLOPT_STDERR に保存されます

CURLOPT_BUFFERSIZE
この値は、データが取得されるたびに読み取られます。毎回読まれます。

CURLOPT_CLOSEPOLICY
CURLCLOSEPOLICY_LEAST_RECENTLY_USED または CURLCLOSEPOLICY_OLDEST のいずれか、他に 3 つありますが、curl はまだそれらをサポートしていません。

CURLOPT_CONNECTTIMEOUT
接続を開始するまでの待機時間。0 に設定すると、待機は行われません。

CURLOPT_DNS_CACHE_TIMEOUT
DNS 情報をメモリに保存する時間を設定します。デフォルトは 120 秒です。

CURLOPT_FTPSSLAUTH

CURLOPT_HTTP_VERSION
curl で使用される HTTP プロトコル、CURL_HTTP_VERSION_NONE (curl 自身に決定させる)、CURL_HTTP_VERSION_1_0 (HTTP/1.0)、CURL_HTTP_VERSION_1_1 (HTTP/1.1) を設定します。 HTTPAUTH
使用される HTTP 認証方法、オプションの値: CURLAUTH_BASIC、CURLAUTH_DIGEST、CURLAUTH_GSSNEGOTIATE、CURLAUTH_NTLM、CURLAUTH_ANY、CURLAUTH_ANYSAFE を使用すると、サーバーは CURLAUTH_BASIC | CURLAUTH_GSSNEGOTI と同等の値を選択できます。 ATE | カール認証_NTLM、 CURLAUTH_ANYSAFE など CURLAUTH_DIGEST | CURLAUTH_GSSNEGOTIATE で価格設定

CURLOPT_INFILESIZE
アップロードするファイルのサイズを設定

CURLOPT_LOW_SPEED_LIMIT
転送速度が CURLOPT_LOW_SPEED_LIMIT 未満の場合、P HP は、CURLOPT_LOW_SPEED_TIME を使用して、送信をキャンセルするかどうかを決定します。遅すぎる。

CURLOPT_LOW_SPEED_TIME
PHP が転送が遅すぎると判断して中止するには、転送の秒数が CURLOPT_LOW_SPEED_LIMIT を下回る必要があります。送信速度が CURLOPT_LOW_SPEED_LIMIT 未満の場合、PHP は CURLOPT_LOW_SPEED_TIME を使用して、遅すぎるため送信をキャンセルするかどうかを判断します。

CURLOPT_MAXCONNECTS
許可される接続の最大数を超えた場合、CURLOPT_CLOSEPOLICY を使用してどの接続を停止するかを決定します

CURLOPT_MAXREDIRS
HTTP リダイレクトの最大数を指定します。このオプションは CURLOPT_FOLLOWLOCATION と一緒に使用されます。

CURLOPT_PORT
接続ポートを指定するオプションの量

CURLOPT_PROXYAUTH

CURLOPT_PROXYPORT

CURLOPT_PROXYTYPE

CURLOPT_RESUME_FROM
転送再開時にバイトオフセットを渡す(ブレークポイント後にダウンロードを再開するために使用されます)

CURLOPT_SSL_VERIFYHOST

CURLOPT_SSLVERSION

CURLOPT_TIMECONDITION
CURLOPT_TIMEVALUE で指定された特定の時間後に編集された場合は、CURL_TIMECOND_IFMODSINCE を使用してページを返します。変更されておらず、CURLOPT_HEADER が true の場合は、「304 Not Modified」ヘッダーを返します。CURLOPT_HEA DER が false の場合は、CURL_TIMECOND_ISUNMODSINCE を使用します。デフォルト値は CURL_TIMECOND_IFMODSINCE です

CURLOPT_TIMEOUT
curl が実行できる最大秒数を設定します

CURLOPT_TIMEVALUE
CURLOPT_TIMECONDITION で使用されるタイムスタンプを設定します、デフォルトでは CURL_TIMECON が使用されます D_IFMODSINCE

CURLOPT_CAINFO

CURLOPT_CAPATH

CURLOPT_COOKIE
コンテンツを設定するHTTP リクエストの「Set-Cookie:」部分。

CURLOPT_COOKIEFILE
この Cookie ファイルは、Netscape 形式または HTTP スタイルのヘッダー情報を含むファイルの名前です。

CURLOPT_COOKIEJAR
接続が閉じられた後に Cookie 情報を保存するファイルの名前

CURLOPT_CUSTOMREQUEST

CURLOPT_EGSOCKET

CURLOPT_ENCODING
ヘッダー内の「Accept-Encoding:」部分の内容、エンコード形式は次のとおりです: "アイデンティティ」、「デフレート」、「gzip」。空の文字列に設定すると、すべてのエンコード形式がサポートされることを意味します。

CURLOPT_FTPPORT

CURLOPT_INTERFACE
外部ネットワーク インターフェイスで使用される名前。インターフェイス名、IP、またはホスト名にすることができます。

CURLOPT_KRB4LEVEL
KRB4 (Kerberos 4) セキュリティ レベル設定。「clear」、「safe」、「confidential」、「private」のいずれかの値になります。デフォルト値は「private」です。null に設定すると、KRB4 セキュリティは FTP 送信でのみ使用できるようになります。

CURLOPT_POSTFIELDS
HTTP の「POST」操作。ファイルを転送する場合は、@で始まるファイル名が必要です

CURLOPT_PROXY
渡すHTTPプロキシサーバーを設定します

CURLOPT_PROXYUSERPWD
接続するためのユーザー名とパスワードを「[ユーザー名]:[パスワード]」の形式で設定しますプロキシサーバーに。

CURLOPT_RANDOM_FILE
SSLで使用する乱数シードを格納するファイル名を設定します

CURLOPT_RANGE
HTTP送信範囲を設定します HTTP送信が複数ある場合は、カンマを使用して送信範囲を設定できます。倍数の値を「X-Y,N-M」の形式で区切ります。

CURLOPT_REFERER
ヘッダーの「Referer:」部分の値を設定します。

CURLOPT_SSL_CIPHER_LIST

CURLOPT_SSLCERT
PEM 形式で証明書を含む文字列を渡します。

CURLOPT_SSLCERTPASSWD
CURLOPT_SSLCERT 証明書を使用するために必要なパスワードを含むパスを渡します。

CURLOPT_SSLCERTTYPE

CURLOPT_SSLENGINE

CURLOPT_SSLENGINE_DEFAULT

CURLOPT_SSLKEY

CURLOPT_SSLKEYPASSWD

CURLOPT_SSLKEYTYPE

CURLOPT_URL
取得するURLアドレスはPHPのcurl_init()関数でも設定できます。

CURLOPT_USERAGENT
HTTP リクエスト内の「user-agent」ヘッダーを含む文字列。

CURLOPT_USERPWD
接続に必要なユーザー名とパスワードを「[ユーザー名]:[パスワード]」の形式で渡します。

CURLOPT_HTTP200ALIASES
エラーの形式で HTTP 200 応答を処理しないように設定します。形式は配列です。

CURLOPT_HTTPHEADER
ヘッダーに送信内容の配列を設定します。

CURLOPT_POSTQUOTE

CURLOPT_QUOTE

CURLOPT_FILE
出力ファイルの場所を設定します。値はリソースタイプで、デフォルトは STDOUT (ブラウザー) です。

CURLOPT_INFILE
ファイルをアップロードするときに読み取る必要があるファイル アドレス。値はリソース タイプです。

CURLOPT_STDERR
エラー出力アドレスを設定します。値はリソースタイプであり、デフォルトの STDERR を置き換えます。

CURLOPT_WRITEHEADER
ヘッダー部分が書き込まれるファイルアドレスを設定します。値はリソースタイプです。

CURLOPT_HEADERFUNCTION
コールバック関数を設定します。この関数には 2 つのパラメータがあります。1 つ目は、curl のリソース ハンドルで、2 つ目は出力ヘッダー データです。ヘッダー データの出力は、書き込まれたデータのサイズを返すこの関数に依存する必要があります。

CURLOPT_PASSWDFUNCTION
3 つのパラメーターを使用してコールバック関数を設定します。最初のパラメーターは、curl リソース ハンドル、2 番目はパスワード プロンプト、3 番目のパラメーターは、許可されるパスワードの最大長です。パスワードの値を返します。

CURLOPT_READFUNCTION
2 つのパラメータを持つコールバック関数を設定します。1 つ目は、curl のリソース ハンドルで、2 つ目は読み取りデータです。データの読み取りはこの関数に依存する必要があります。 0 または EOF など、読み取りデータのサイズを返します。

CURLOPT_WRITEFUNCTION
2 つのパラメーターを使用してコールバック関数を設定します。1 つ目は、curl リソース ハンドルで、2 つ目は、書き込まれたデータです。データの書き込みはこの関数に依存する必要があります。書き込まれたデータの正確なサイズを返します

8. CURLINFO パラメータの概要:

CURLINFO_EFFECTIVE_URL
最後に有効な URL アドレス

CURLINFO_HTTP_CODE
最後に受信した HTTP コード

CURLINFO_FILETIME
ドキュメントをリモートで取得する時間そうでない場合可能 取得した場合の戻り値は「-1」

CURLINFO_TOTAL_TIME
前回の送信に要した時間

CURLINFO_NAMELOOKUP_TIME
名前解決に要した時間

CURLINFO_CONNECT_TIME
接続の確立に要した時間

CURLINFO_ PRETRANSFER_TIME
から接続の確立から準備までの転送時間

CURLINFO_STARTTRANSFER_TIME
接続の確立から転送の開始までの時間

CURLINFO_REDIRECT_TIME
トランザクション転送が開始されるまでのリダイレクトにかかる時間

CURLINFO_SIZE_UPLOAD
アップロードされたデータの総量

CUR LIN FO_SIZE_DOWNLOAD
データをダウンロードする金額の合計値

CURLINFO_SPEED_DOWNLOAD
平均ダウンロード速度

CURLINFO_SPEED_UPLOAD
平均アップロード速度

CURLINFO_HEADER_SIZE
ヘッダー部分のサイズ

CURLINFO_HEADER_OUT
リクエストを送信する文字列

CURLINFO_REQUEST_SIZE
問題のリクエストのサイズHTTP リクエスト

CURLINFO_SSL_VERIFYRESULT

CURLINFO_CONTENT_LENGTH_DOWNLOAD
Content-Length: フィールドから読み取られたダウンロード コンテンツの長さ

CURLINFO_CONTENT_LENGTH_UPLOAD
アップロード コンテンツ サイズの説明

CURLINFO_CONTENT_ TYPE
ダウンロードされたコンテンツの「Content-type」値、NULL はサーバーが有効な「Content-Type: header」が送信されませんでした


声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
誇大広告を超えて:今日のPHPの役割の評価誇大広告を超えて:今日のPHPの役割の評価Apr 12, 2025 am 12:17 AM

PHPは、特にWeb開発の分野で、最新のプログラミングで強力で広く使用されているツールのままです。 1)PHPは使いやすく、データベースとシームレスに統合されており、多くの開発者にとって最初の選択肢です。 2)動的コンテンツ生成とオブジェクト指向プログラミングをサポートし、Webサイトを迅速に作成および保守するのに適しています。 3)PHPのパフォーマンスは、データベースクエリをキャッシュおよび最適化することで改善でき、その広範なコミュニティと豊富なエコシステムにより、今日のテクノロジースタックでは依然として重要になります。

PHPの弱い参照は何ですか、そしていつ有用ですか?PHPの弱い参照は何ですか、そしていつ有用ですか?Apr 12, 2025 am 12:13 AM

PHPでは、弱い参照クラスを通じて弱い参照が実装され、ガベージコレクターがオブジェクトの回収を妨げません。弱い参照は、キャッシュシステムやイベントリスナーなどのシナリオに適しています。オブジェクトの生存を保証することはできず、ごみ収集が遅れる可能性があることに注意する必要があります。

PHPで__invoke Magicメソッドを説明してください。PHPで__invoke Magicメソッドを説明してください。Apr 12, 2025 am 12:07 AM

\ _ \ _ Invokeメソッドを使用すると、オブジェクトを関数のように呼び出すことができます。 1。オブジェクトを呼び出すことができるように\ _ \ _呼び出しメソッドを定義します。 2。$ obj(...)構文を使用すると、PHPは\ _ \ _ Invokeメソッドを実行します。 3。ロギングや計算機、コードの柔軟性の向上、読みやすさなどのシナリオに適しています。

同時性については、PHP 8.1の繊維を説明します。同時性については、PHP 8.1の繊維を説明します。Apr 12, 2025 am 12:05 AM

繊維はPhp8.1で導入され、同時処理機能が改善されました。 1)繊維は、コルーチンと同様の軽量の並行性モデルです。 2)開発者がタスクの実行フローを手動で制御できるようにし、I/O集約型タスクの処理に適しています。 3)繊維を使用すると、より効率的で応答性の高いコードを書き込むことができます。

PHPコミュニティ:リソース、サポート、開発PHPコミュニティ:リソース、サポート、開発Apr 12, 2025 am 12:04 AM

PHPコミュニティは、開発者の成長を支援するための豊富なリソースとサポートを提供します。 1)リソースには、公式のドキュメント、チュートリアル、ブログ、LaravelやSymfonyなどのオープンソースプロジェクトが含まれます。 2)StackOverFlow、Reddit、およびSlackチャネルを通じてサポートを取得できます。 3)開発動向は、RFCに従うことで学ぶことができます。 4)コミュニティへの統合は、積極的な参加、コード共有への貢献、および学習共有への貢献を通じて達成できます。

PHP対Python:違いを理解しますPHP対Python:違いを理解しますApr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

PHP:それは死にかけていますか、それとも単に適応していますか?PHP:それは死にかけていますか、それとも単に適応していますか?Apr 11, 2025 am 12:13 AM

PHPは死にかけていませんが、常に適応して進化しています。 1)PHPは、1994年以来、新しいテクノロジーの傾向に適応するために複数のバージョンの反復を受けています。 2)現在、電子商取引、コンテンツ管理システム、その他の分野で広く使用されています。 3)PHP8は、パフォーマンスと近代化を改善するために、JITコンパイラおよびその他の機能を導入します。 4)Opcacheを使用してPSR-12標準に従って、パフォーマンスとコードの品質を最適化します。

PHPの未来:適応と革新PHPの未来:適応と革新Apr 11, 2025 am 12:01 AM

PHPの将来は、新しいテクノロジーの傾向に適応し、革新的な機能を導入することで達成されます。1)クラウドコンピューティング、コンテナ化、マイクロサービスアーキテクチャに適応し、DockerとKubernetesをサポートします。 2)パフォーマンスとデータ処理の効率を改善するために、JITコンパイラと列挙タイプを導入します。 3)パフォーマンスを継続的に最適化し、ベストプラクティスを促進します。

See all articles

ホット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ヘンタイを無料で生成します。

ホットツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール