ホームページ  >  記事  >  php教程  >  PHP CURL CURLOPT パラメータの説明 (curl_setopt)_php の基本

PHP CURL CURLOPT パラメータの説明 (curl_setopt)_php の基本

WBOY
WBOYオリジナル
2016-05-16 09:00:021590ブラウズ

CURLOPT_RETURNTRANSFER オプション:

curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);

成功した場合は、結果のみが返され、自動的には何も出力されません。

失敗した場合は FALSE を返します

curl_setopt($ch, CURLOPT_RETURNTRANSFER,0); または、このオプションを使用しないでください:

成功した場合にのみ TRUE を返し、返された内容を自動的に出力します。

失敗した場合は FALSE を返します

PHP の CURL メソッドのcurl_setopt() 関数の一部のパラメータ。

boolcurl_setopt (int ch、文字列オプション、混合値)
curl_setopt() 関数は、CURL セッションのオプションを設定します。 option パラメーターは必要な設定であり、value はこのオプションで指定される値です。


次のオプションの値は長整数として使用されます (オプション パラメーターで指定): CURLOPT_INFILESIZE: ファイルをリモート サイトにアップロードするとき、このオプションは PHP にファイルのサイズを伝えます。アップロードされました。
• CURLOPT_VERBOSE : CURL にすべての予期しないイベントを報告させる場合は、このオプションをゼロ以外の値に設定します。
• CURLOPT_HEADER : 出力にヘッダーを含める場合は、このオプションをゼロ以外の値に設定します。
• CURLOPT_NOPROGRESS: PHP に CURL 転送の進行状況バーを表示させたくない場合は、このオプションをゼロ以外の値に設定します。注: PHP はこのオプションをゼロ以外の値に自動的に設定します。このオプションはデバッグ目的でのみ変更してください。
• CURLOPT_NOBODY : 出力に本文部分を含めたくない場合は、このオプションをゼロ以外の値に設定します。
• CURLOPT_FAILONERROR: エラーが発生した場合 (HTTP コードが 300 以上を返す場合)、PHP を表示しないようにするには、このオプションをゼロ以外の値に設定します。デフォルトの動作では、通常のページが返され、コードは無視されます。
• CURLOPT_UPLOAD: PHP にアップロードの準備をさせたい場合は、このオプションをゼロ以外の値に設定します。
• CURLOPT_POST: PHP で通常の HTTP POST を実行する場合は、このオプションをゼロ以外の値に設定します。この POST は通常の application/x-www-from-urlencoded タイプで、主に HTML フォームで使用されます。
• CURLOPT_FTPLISTONLY: このオプションをゼロ以外の値に設定すると、PHP は FTP ディレクトリ名のリストを表示します。
• CURLOPT_FTPAPPEND : このオプションをゼロ以外の値に設定すると、PHP はリモート ファイルを上書きせずに適用します。
• CURLOPT_NETRC: このオプションをゼロ以外の値に設定すると、PHP は ~./netrc ファイル内で接続先のリモート サイトのユーザー名とパスワードを検索します。
• CURLOPT_FOLLOWLOCATION: このオプションをゼロ以外のヘッダー ("Location: " など) に設定すると、サーバーはそれを HTTP ヘッダーの一部として送信します (これは再帰的であることに注意してください。PHP は "Location: " のようなものを送信します)の頭)。
• CURLOPT_PUT : HTTP を使用してファイルをアップロードするには、このオプションをゼロ以外の値に設定します。このファイルをアップロードするには、CURLOPT_INFILE および CURLOPT_INFILESIZE オプションを設定する必要があります。
• CURLOPT_MUTE: このオプションをゼロ以外の値に設定すると、PHP は CURL 関数に対して完全にサイレントになります。
• CURLOPT_TIMEOUT: 最大秒数として長整数を設定します。
• CURLOPT_LOW_SPEED_LIMIT: 送信されるバイト数を制御する長整数を設定します。
• CURLOPT_LOW_SPEED_TIME: 長整数を設定して、CURLOPT_LOW_SPEED_LIMIT で指定されたバイト数を送信する秒数を制御します。
• CURLOPT_RESUME_FROM: バイト オフセット アドレス (転送先の開始フォーム) を含む長整数パラメータを渡します。
• CURLOPT_SSLVERSION: SSL バージョンを含む長いパラメータを渡します。デフォルトでは、PHP は独自のハードワークを実行しますが、セキュリティを強化するには手動で設定する必要があります。
• CURLOPT_TIMECONDITION: 長いパラメータを渡して、CURLOPT_TIMEVALUE パラメータの処理方法を指定します。このパラメータは TIMECOND_IFMODSINCE または TIMECOND_ISUNMODSINCE に設定できます。これはHTTPのみの場合です。
• CURLOPT_TIMEVALUE: 1970 年 1 月 1 日から現在までの秒数を渡します。この時間は、CURLOPT_TIMEVALUE オプション、またはデフォルトの TIMECOND_IFMODSINCE によって指定された値として使用されます。

次のオプションの値は文字列として扱われます。
• CURLOPT_URL: これは、PHP を使用して取得する URL アドレスです。このオプションは、curl_init() 関数を使用した初期化中に設定することもできます。
• CURLOPT_USERPWD: [ユーザー名]:[パスワード] の形式で文字列を渡し、PHP を使用して接続します。
• CURLOPT_PROXYUSERPWD: [ユーザー名]:[パスワード] の形式で文字列を渡し、HTTP プロキシに接続します。
• CURLOPT_RANGE: 指定する範囲を渡します。 X または Y を除いた「X-Y」形式である必要があります。 HTTP 転送では、カンマ (X-Y、N-M) で区切られた複数の間隔もサポートされます。
• CURLOPT_POSTFIELDS: すべてのデータを含む文字列を HTTP "POST" オペレーションとして渡します。
• CURLOPT_REFERER: HTTP リクエスト内の「リファラー」ヘッダーを含む文字列。
• CURLOPT_USERAGENT: HTTP リクエスト内の「user-agent」ヘッダーを含む文字列。
• CURLOPT_FTPPORT: ftp の「POST」コマンドで使用される IP アドレスを含む IP アドレスを渡します。この POST コマンドは、指定した IP アドレスに接続するようにリモート サーバーに指示します。この文字列には、IP アドレス、ホスト名、ネットワーク インターフェイス名 (UNIX の場合)、または「-」 (システムのデフォルトの IP アドレスを使用) を指定できます。
• CURLOPT_COOKIE: HTTP Cookie を含むヘッダー接続を渡します。
• CURLOPT_SSLCERT: 証明書を含む文字列を PEM 形式で渡します。
• CURLOPT_SSLCERTPASSWD: CURLOPT_SSLCERT 証明書を使用するために必要なパスワードを含むパスワードを渡します。
• CURLOPT_COOKIEFILE: Cookie データを含むファイルの名前を含む文字列を渡します。この Cookie ファイルは、Netscape 形式であることも、ファイルに保存されている HTTP スタイルのヘッダーのスタックであることもできます。
• CURLOPT_CUSTOMREQUEST: HTTP リクエストを行うときに、GET または HEAD で使用される文字を渡します。 HTTP リクエストを実行するときに、GET または HEAD の代わりに使用される文字列を渡します。これは、HTTP リクエストを実行する場合や、よりわかりにくい別の HTTP リクエストを実行する場合に便利です。 注: まだ実行しないようにサーバーが Order をサポートしていることを確認してください。次のオプションには、ファイルの説明(fopen() 関数を使用して取得)が必要です。
• CURLOPT_FILE: このファイルは、転送を配置する出力ファイルになります。デフォルトは STDOUT です。
• CURLOPT_INFILE: このファイルは、転送を配置した出力ファイルになります。入力ファイル。
• CURLOPT_WRITEHEADER: このファイルには出力のヘッダー部分が含まれます。
• CURLOPT_STDERR : このファイルには、stderr の代わりにエラーが書き込まれています。ログインが必要なページの取得例。現状は毎回ログインする方法ですが、必要な方が改善していきます。

例 1:

コードをコピー コードは次のとおりです。

$cookie_jar = tempnam('./ tmp', 'cookie');
$ch =curl_init();curl_setopt($ch,CURLOPT_URL, 'http://******');
curl_setopt($ch, CURLOPT_POST, 1 );$request = 'email_address=&password=&action=';
curl_setopt($ch, CURLOPT_POSTFIELDS, $request); //返された Cookie 情報を $cookie_jar ファイルに保存します
curl_setopt($ch , CURLOPT_COOKIEJAR, $cookie_jar); //返されたデータを自動的に表示するかどうかを設定します
curl_setopt($ch, CURLOPT_RETURTRANSFER, 1); //ヘッダー情報を表示するかどうかを設定します
curl_setopt($ch, CURLOPT_HEADER, false) ; //ページコンテンツを出力するかどうかを設定します
curl_setopt($ch, CURLOPT_NOBODY, false);
curl_exec($ch);
curl_close($ch); //ログイン後にデータを取得します

例 2:

コードをコピー コードは次のとおりです。

$ch2 =curl_init();curl_setopt ($ch2, CURLOPT_URL, 'http://*****');
curl_setopt($ch2, CURLOPT_HEADER, false);
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);
curl_setopt( $ch2, CURLOPT_COOKIEFILE, $cookie_jar);
$orders =curl_exec($ch2);
echo '';

echotrip_tags($orders);
echo '';
curl_close($ch2); 実践は非常に安定していることが証明されています:)

例 3:

コードをコピー コードは次のとおりです。

set_time_limit(0);
function _rand() {
$length=26;
$chars = "0123456789abcdefghijklmnopqrstuvwxyz";
$max = strlen($chars) - 1;
mt_srand((double)microtime() * 1000000);
$string = '';
for($i = 0; $i $string .= $chars[mt_rand(0, $max)];
}
return $string;
}
$HTTP_SESSION=_rand();echo $HTTP_SESSION;
$HTTP_Server="www.baidu.com";
$HTTP_URL="/";
$ch =curl_init();
curl_setopt ($ch,CURLOPT_URL, "http://".$HTTP_Server.$HTTP_URL);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_USERAGENT,"Mozilla/4.0 (互換性あり、MSIE 6.0、Windows NT 5.1) ; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)");
//curl_setopt($ch,CURLOPT_COOKIE,$HTTP_SESSION);
$res =curl_exec($ch);
curl_close ($ch);
print_r($res);

刷论坛代码:
1、抓クッキー程序:

复制代码代码如下:

$URL="http://www.yoururl .com/bbs/login.asp?action=chk";
//認証坛のログイン页面地址を入力
$ch =curl_init();
curl_setopt($ch,CURLOPT_URL,$URL);
curl_setopt($ch,CURLOPT_REFERER,"http://www.hxfoods.com/bbs/login.asp");
//設置、访问页面の来源地址

curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,'username=→→危死队→&password=168168');
//分析登陆页面,把用户名,密解個別对应起来
curl_setopt ($ch, CURLOPT_HEADER,true);
//使用能表示http头,
curl_exec($ch);
if (curl_errno($ch))
{
printcurl_error($ch);
}
else
{
curl_close($ch);
}

2、刷楼了:

复制代码代码如下:

set_time_limit(0);
//無制限のプログラム実行時間を設定します
$i=10000;
//10000 回再生します
for($j=0;$j{
$URL="http://www.yoururl.com/bbs/savepost.asp";
//これaddress は、返信フォーム内のアクションの URL アドレスです。
$ch =curl_init();
curl_setopt($ch,CURLOPT_URL,$URL);
curl_setopt($ch,CURLOPT_REFERER,"http:/ /www.hxfoods.com/bbs/dispbbs.asp?boardid=14&replyid=672709&id=127437&page=1&skin=0&Star=53");
//ソース アドレスを設定します。設定されていない場合は、フォーラム サーバーが検証され、返信は許可されていません
curl_setopt($ch,CURLOPT_COOKIESESSION,true);
//Cookie を保存できます
curl_setopt($ch,CURLOPT_COOKIE,"DvForum=userid=24122&usercookies=0&userhidden=2&password=w0reu3g775VrY745&userclass=�| &username=���� �������&StatUserID=2194783945 ");
//ここに Cookie が設定されます
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ ch,CURLOPT_NOBODY,1);//返信後に自動的にジャンプするフォーラムが多いため、内容を表示しません。
curl_setopt($ ch、curlopt_postfields、 'body = gfdfgdfgasdfgdfgdfgdfg&followup = 672709&rootid = 127437&star = 58&totalusatable = dv_bbs3& Zed応答フォームパラメータにはそれぞれ値が割り当てられます。
curl_setopt ($ch, CURLOPT_HEADER,true);
curl_exec($ch);
if (curl_errno($ch))
{
printcurl_error ($ch) ;
}
else
{
curl_close($ch);
}
}

curl_close - Curl セッションを閉じる
curl_copy_handle - Curl 接続リソースのすべての内容とパラメータをコピーする
curl_errno - 現在のセッションのエラー情報を含む数値を返します
curl_error - エラーを含む数値を返します現在のセッション エラー 情報の文字列
curl_exec — Curl セッションを実行します
curl_getinfo — Curl 接続リソース ハンドルに関する情報を取得します
curl_init — Curl セッションを初期化します
curl_multi_add_handle — 個々の Curl を Curl バッチ セッションに追加しますハンドル リソース
curl_multi_close - バッチ ハンドル リソースを閉じる
curl_multi_exec - Curl バッチ ハンドルを解析します
curl_multi_getcontent - 取得した出力のテキスト ストリームを返します
curl_multi_info_read - 現在解析されているcurlの関連送信情報を取得します
curl_multi_init — Curl バッチ ハンドル リソースを初期化します。
curl_multi_remove_handle — Curl バッチ ハンドル リソース内のハンドル リソースを削除します。
curl_multi_select — cURL 拡張機能に関連付けられたすべてのソケットを取得します。これは「選択」できます
>curl_setopt_array — Curl のセッション パラメータを配列形式で設定します
curl_setopt — Curl のセッション パラメータを設定します
curl_version — Curl 関連のバージョン情報を取得します
curl_init() 関数の役割は次のとおりです。 Curl セッションを初期化する場合、curl_init() 関数の唯一のパラメータはオプションであり、URL アドレスを表します。
curl_exec() 関数は、curl セッションを実行するために使用されます。唯一のパラメータは、curl_init() 関数によって返されるハンドルです。
curl_close() 関数は、curl セッションを閉じるために使用されます。唯一のパラメータは、curl_init() 関数によって返されるハンドルです。

$ch =curl_init("http://www.baidu.com/");
curl_exec($ch);
curl_close($ch);
curl_version() の関数は次のとおりです。 curl 関連のバージョン情報を取得します。curl_version() 関数にはパラメータがありますが、それが何をするのかわかりません。

print_r(curl_version())
curl_getinfo() の関数は、curl 接続リソース ハンドルの情報を取得することです。curl_getinfo() 関数には 2 つのパラメータがあります。最初のパラメータは、curl のリソース ハンドルであり、 2 番目のパラメータは次の定数です:

$ch =curl_init("http://www.baidu.com/");
print_r(curl_getinfo($ch));
オプションの定数は次のとおりです:
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
アップロードされたデータの合計量
CURLINFO_SIZE_DOWNLOAD
ダウンロードされたデータの合計値
CURLINFO_SPEED_DOWNLOAD
平均ダウンロード速度
CURLINFO_SPEED_UPLOAD
平均アップロード速度
CURLINFO_HEADER_SIZE
ヘッダー部分のサイズCURLINFO_HEADER_OUT
要求された文字列を送信します
CURLINFO_REQUEST_SIZE
HTTP 要求内の該当の要求サイズ
CURLINFO_SSL_VERIFYRESULT
CURLOPT_SSL_VERIFYPEER の設定によって要求された SSL 証明書検証の結果
CURLINFO_CONTENT_LENGTH_DOWNLOAD
送信元Content-Length : フィールドに読み取られたダウンロード コンテンツの長さ
CURLINFO_CONTENT_LENGTH_UPLOAD
アップロード コンテンツ サイズの説明
CURLINFO_CONTENT_TYPE

ダウンロードされたコンテンツの「Content-type」値、NULL は、サーバーが有効な「Content-Type: header」を送信しなかったことを意味します

curl_setopt() 関数は、curl のセッション パラメータを設定するために使用されます。 curl_setopt_array() 関数は、curl のセッション パラメータを配列形式で設定するために使用されます。

コードをコピー コードは次のとおりです。

$ch =curl_init();$ fp = fopen("example_homepage.txt", "w");
curl_setopt($ch, CURLOPT_FILE, $fp);
$options = array(
CURLOPT_URL => 'http:/ /www.baidu.com/',
CURLOPT_HEADER => false
);
curl_setopt_array($ch, $options);
curl_exec($ch);
curl_close($ch) ;
fclose($fp);

設定できるパラメータは次のとおりです。
CURLOPT_AUTOREFERER
ヘッダー内のリファラー情報を自動的に設定します
CURLOPT_BINARYTRANSFER
CURLOPT_RETURNTRANSFER が有効な場合、データが取得されて返されます
CURLOPT_COOKIESESSION有効にすると、curl はセッション Cookie のみを渡し、他の Cookie を無視します。デフォルトでは、curl はすべての 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
アクティブな FTP ダウンロードを実行するときに EPRT (および LPRT) を使用する場合は TRUE。EPRT と LPRT を無効にし、PORT のみを使用する場合は FALSE を使用します。
PHP 5.0.0 で追加されました。
CURLOPT_FTP_USE_EPSV
PASV に戻す前に、最初に FTP 転送の EPSV コマンドを試行する場合は TRUE。EPSV を無効にするには FALSE に設定します。
CURLOPT_FTPAPPEND
リモート ファイルを上書きする代わりに追加する場合は TRUE。
CURLOPT_FTPASCII
CURLOPT_TRANSFERTEXT のエイリアス。代わりにそれを使用してください。
CURLOPT_FTPLISTONLY
FTP ディレクトリの名前のみをリストする場合は TRUE。
CURLOPT_HEADER
有効にすると、ヘッダー ファイル情報がデータ ストリームとして出力されます。
CURLOPT_HTTPGET
有効にすると、HTTP メソッドは GET に設定されます。GET がデフォルトであるため、変更された場合にのみ使用されます。
CURLOPT_HTTPPROXYTUNNEL
有効にすると、送信は HTTP プロキシ経由で行われます。
CURLOPT_MUTE
curl 関数で変更されたすべてのパラメータをデフォルト値に戻します。
CURLOPT_NETRC
接続が確立されたら、~/.netrc ファイルにアクセスして、リモート サイトに接続するためのユーザー名とパスワード情報を取得します。
CURLOPT_NOBODY
有効にすると、HTML の本文部分は出力されません。
CURLOPT_NOPROGRESS
有効にすると、curl 送信の進行状況バーがオフになります。この項目のデフォルト設定は true
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
cURL がピアの証明書を検証しないようにするには、FALSE を指定します。検証する代替証明書は CURLOPT_CAINFO オプションで指定でき、証明書ディレクトリは CURLOPT_CAPATH オプションで指定できます。CURLOPT_SSL_VERIFYHOST も TRUE または FALSE である必要がある場合があります。 CURLOPT_SSL_VERIFYPEER が無効な場合 (デフォルトは 2)。cURL 7.10 ではデフォルトで TRUE。cURL 7.10 以降にインストールされたデフォルトのバンドル。
CURLOPT_TRANSFERTEXT
FTP 転送に ASCII モードを使用する場合は TRUE。LDAP の場合、次のデータを取得します。 HTML ではなくプレーン テキスト。Windows システムでは、STDOUT をバイナリ モードに設定しません。
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
FTP 認証方法 (有効な場合): CURLFTPAUTH_SSL (最初に SSL を試す)、CURLFTPAUTH_TLS (最初に TLS を試す)、または CURLFTPAUTH_DEFAULT (cURL に決定させる)。
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)

CURLOPT_HTTPAUTH

使用される HTTP 検証方法。オプションの値は次のとおりです: CURLAUTH_BASIC、CURLAUTH_DIGEST、CURLAUTH_GSSNEGOTIATE、CURLAUTH_NTLM、CURLAUTH_ANY、CURLAUTH_ANYSAFE。「|」演算子を使用して複数の値を区切ることができ、curl はサーバーに次の値を選択させます。 CURLAUTH_ANY は CURLAUTH_BASIC | CURLAUTH_DIGEST | CURLAUTH_GSSNEGOTIATE | CURLAUTH_NTLM と同等、CURLAUTH_ANYSAFE は CURLAUTH_DIGEST | CURLAUTH_GSSNEGOTIATE | CURLAUTH_NTLM と同等
CURLOPT_INFILESIZE

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

CURLOPT_LOW_SPEED_LIMIT
送信速度が CURLOPT_LOW_SPEED_LIMIT 未満の場合、PHP は CURLOPT_LOW_SPEED_TIME を使用して、遅すぎるため送信をキャンセルするかどうかを決定します。
CURLOPT_LOW_SPEED_TIME
PHP が転送が遅すぎると判断して転送を中止するには、転送の秒数が CURLOPT_LOW_SPEED_LIMIT を下回っている必要があります。
CURLOPT_MAXCONNECTS
許可される接続の最大数を超えた場合、CURLOPT_CLOSEPOLICY を使用してどの接続を停止するかを決定します
CURLOPT_MAXREDIRS
HTTP リダイレクトの最大数を指定します。このオプションは CURLOPT_FOLLOWLOCATION と一緒に使用されます。 。
CURLOPT_PORT
接続ポートの指定に使用されるオプションの数量
CURLOPT_PROXYAUTH
プロキシ接続に使用する HTTP 認証方法。CURLOPT_HTTPAUTH で説明されているのと同じビットマスクを使用します。プロキシ認証の場合は、現在サポートされているのは CURLAUTH_BASIC と CURLAUTH_NTLM のみです。
CURLOPT_PROXYPORT
接続先のプロキシのポート番号。このポート番号は CURLOPT_PROXY でも設定できます。
CURLOPT_PROXYTYPE
CURLPROXY_HTTP (デフォルト) または CURLPROXY_SOCKS5 のいずれか。
CURLOPT_RESUME_FROM
送信を再開するときにバイト オフセットを渡します (ブレークポイントから転送を再開するために使用されます)。
CURLOPT_SSL_VERIFYHOST
1 は、SSL ピア証明書内の共通名の存在を確認します。
2共通名の存在を確認し、それが指定されたホスト名と一致するかどうかを確認します。
CURLOPT_SSLVERSION
使用する SSL バージョン (2 または 3)。デフォルトでは、PHP 自体がこれを決定しようとしますが、場合によってはこれは手動で設定する必要があります。
CURLOPT_TIMECONDITION
CURL_TIMECOND_IFMODSINCE を使用すると、CURLOPT_TIMEVALUE で指定された一定時間後にページが編集された場合にページが返されます。ページが変更されておらず、CURLOPT_HEADER が true の場合はページが返されます。「304 Not Modified」 " ヘッダー、CURLOPT_HEADER が false の場合は、CURL_TIMECOND_ISUNMODSINCE を使用します。デフォルト値は CURL_TIMECOND_IFMODSINCE です
CURLOPT_TIMEOUT
curl が実行できる最大秒数を設定します
CURLOPT_TIMEVALUE
CURLOPT_TIMECONDITION で使用されるタイムスタンプを設定します。デフォルトは CURL_TIMECOND_IFMODSINCE です
CURLOPT_CAINFO
ピアを検証するための 1 つ以上の証明書を保持するファイルの名前。これは、CURLOPT_SSL_VERIFYPEER と組み合わせて使用​​する場合にのみ意味を持ちます。
CURLOPT_CAPATH
複数の CA を保持するディレクトリこのオプションは、CURLOPT_SSL_VERIFYPEER と一緒に使用します。
CURLOPT_COOKIE
HTTP リクエストの「Set-Cookie:」部分のコンテンツを設定します。
CURLOPT_COOKIEFILE
Cookie 情報を含むファイルの名前。この Cookie ファイルには、Netscape 形式または HTTP スタイルのヘッダー情報を使用できます。
CURLOPT_COOKIEJAR
接続が閉じられた後、Cookie 情報を保存するファイルの名前
CURLOPT_CUSTOMREQUEST
HTTP リクエストを実行するときに「GET」または「HEAD」の代わりに使用するカスタム リクエスト メソッド。これは、「DELETE」またはその他のよりあいまいな HTTP リクエストを実行する場合に役立ちます。有効な値は、「GET」、「POST」、「CONNECT」などです。つまり、ここに HTTP リクエスト行全体を入力しないでください。インスタンスでは、「GET /index .html HTTP/1.0\r\n\r\n」と入力するのは誤りです。
注: 最初にサーバーがカスタム リクエスト メソッドをサポートしていることを確認せずにこれを実行しないでください。
CURLOPT_EGBSOCKET
CURLOPT_RANDOM_FILE と同様ですが、エントロピー収集デーモン ソケットへのファイル名を除きます。
CURLOPT_ENCODING
ヘッダーの「Accept-Encoding:」部分の内容。サポートされるエンコード形式は次のとおりです。「identity」、「デフレート」、「gzip」。空の文字列に設定すると、すべてのエンコード形式がサポートされることを意味します
CURLOPT_FTPPORT
FTP の「POST」命令に使用する IP アドレスを取得するために使用される値。「POST」命令は、指定した IP アドレスに接続するためのリモート サーバー。文字列は、プレーンな IP アドレス、ホスト名、ネットワーク インターフェース名 (Unix の場合)、またはシステムのデフォルトの IP アドレスを使用する単なる「-」です。
CURLOPT_INTERFACE 外部ネットワーク インターフェイスで使用される名前。インターフェイス名、IP、またはホスト名を指定できます。
CURLOPT_KRB4LEVEL
KRB4 (Kerberos 4) セキュリティ レベル設定は、「クリア」、「安全」、「機密」、「プライベート」のいずれかの値です。デフォルト値は「プライベート」です。null に設定すると、KRB4 が無効になります。現在、KRB4 セキュリティは FTP 送信でのみ使用できます。
CURLOPT_POSTFIELDS
HTTP の「POST」操作。ファイルを転送したい場合は、@で始まるファイル名が必要です。
CURLOPT_PROXY
プロキシ サーバーに接続するには
CURLOPT_PROXYUSERPWD
を通じてHTTPプロキシ サーバーを設定します。形式は「[ユーザー名]」です。 :[パスワード]" ユーザー名とパスワード。
CURLOPT_RANDOM_FILE
SSLで使用する乱数シードを格納するファイル名を設定します
CURLOPT_RANGE
HTTPの送信範囲を設定します。送信範囲は「X-Y」の形式で設定できます。複数の HTTP 送信の場合は、「X-Y,N-M」のようにカンマを使用して複数の値を区切ります。
CURLOPT_REFERER
ヘッダーの「Referer:」部分の値を設定します。
CURLOPT_SSL_CIPHER_LIST
SSL に使用する暗号のリスト。たとえば、RC4-SHA と TLSv1 は有効な暗号リストです。
CURLOPT_SSLCERT
証明書を含む文字列を PEM 形式で渡します。
CURLOPT_SSLCERTPASSWD
CURLOPT_SSLCERT 証明書を使用するために必要なパスワードを含むパスを渡します。
CURLOPT_SSLCERTTYPE
証明書の形式。サポートされている形式は、「PEM」(デフォルト)、「DER」、および「ENG」です。
CURLOPT_SSLENGINE
秘密 SSL キーの暗号エンジンの識別子CURLOPT_SSLKEY で指定されます。
CURLOPT_SSLENGINE_DEFAULT
非対称暗号化操作に使用される暗号化エンジンの識別子。
CURLOPT_SSLKEY
秘密 SSL キーを含むファイルの名前。
CURLOPT_SSLKEYPASSWD
シークレットCURLOPT_SSLKEY で指定された秘密 SSL キーを使用するために必要なパスワードです。
注: このオプションには機密性の高いパスワードが含まれているため、含まれている PHP スクリプトを安全な場所に保管してください。
CURLOPT_SSLKEYTYPE
秘密のキーのタイプCURLOPT_SSLKEY で指定された SSL キー。サポートされているキーの種類は、「PEM」(デフォルト)、「DER」、「ENG」です。
CURLOPT_URL
取得する URL アドレスは、curl_init() 関数でも設定できます。 PHP 。
CURLOPT_USERAGENT
HTTP リクエストに「user-agent」ヘッダー文字列が含まれます。
CURLOPT_USERPWD
接続に必要なユーザー名とパスワードを「[ユーザー名]:[パスワード]」の形式で渡します。
CURLOPT_HTTP200ALIASES
この設定では、エラーの形式で HTTP 200 応答が処理されなくなり、形式は配列になりました。
CURLOPT_HTTPHEADER
ヘッダーに送信内容の配列を設定します。
CURLOPT_POSTQUOTE
FTP リクエストの実行後にサーバー上で実行する FTP コマンドの配列。
CURLOPT_QUOTE
FTP リクエストの前にサーバー上で実行する FTP コマンドの配列。
> >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 つ目は書き込まれたデータです。データの書き込みはこの関数に依存する必要があります。書き込まれたデータの正確なサイズを返します

curl_copy_handle() の機能は、curl 接続リソースのすべての内容とパラメータをコピーすることです

$ch =curl_init("http://www.baidu.com/");
$another =curl_copy_handle($ch);
curl_exec($another);
curl_close($another) );
curl_error() 関数の機能は、現在のセッションのエラー情報を含む文字列を返すことです。
curl_errno() 関数の機能は、現在のセッションのエラー情報を含む数値を返すことです。
curl_multi_init() の機能は、curl バッチ ハンドル リソースを初期化することです。
curl_multi_add_handle() 関数は、個々のcurlハンドルリソースをcurlバッチセッションに追加するために使用されます。 curl_multi_add_handle() 関数には 2 つのパラメータがあり、最初のパラメータは CURL バッチ ハンドル リソースを表し、2 番目のパラメータは個別の CURL ハンドル リソースを表します。
curl_multi_exec() 関数の機能は、curl バッチ ハンドルを解析することです。curl_multi_exec() 関数には 2 つのパラメータがあります。最初のパラメータはバッチ ハンドル リソースを表し、2 番目のパラメータは参照値パラメータで、残りのリソースを示します。処理する必要がある個々のカール ハンドル リソースの数。
curl_multi_remove_handle() 関数は、curl バッチ ハンドル リソース内のハンドル リソースの削除を表します。curl_multi_remove_handle() 関数には 2 つのパラメータがあります。最初のパラメータは、curl バッチ ハンドル リソースを表し、2 番目のパラメータは、別のcurlハンドルリソース。
curl_multi_close() の機能は、バッチ ハンドル リソースを閉じることです。

$ch1 =curl_init();
$ch2 =curl_init();
curl_setopt($ch1, CURLOPT_URL, "http://www.baidu.com/");
curl_setopt($ ch1, CURLOPT_HEADER, 0);
curl_setopt($ch2, CURLOPT_URL, "http://www.google.com/");
curl_setopt($ch2, CURLOPT_HEADER, 0);
$mh = curl_multi_init();
curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);
その間、{
curl_multi_exec($mh,$flag);
} を実行します($flag > 0);
curl_multi_remove_handle($mh,$ch1);
curl_multi_remove_handle($mh,$ch2);
curl_multi_close($mh);
curl_multi_getcontent() の関数は次のとおりです。 CURLOPT_RETURTRANSFER が設定されている場合、フェッチされた出力のテキスト ストリームを返します。
curl_multi_info_read() 関数は、現在解析されているcurlの関連する送信情報を取得するために使用されます。
curl_multi_select()
cURL 拡張機能に関連付けられたすべてのソケットを取得します。これにより、「選択」できるようになります。

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