5

httpリクエストを実行し、現在のスクリプトで受信したすべてのCookie(特にCookieを識別するセッション)をこのリクエストに渡したいと思います。次に、さらに操作するために結果を文字列に保存したいと思います。PHPでこれを行うための最良の方法は何ですか?

4

1 に答える 1

7

cURL?-それはシンプルでサポートクッキーです。

編集19.1-これが例です

$ ch = curl_init();
curl_setopt($ ch、CURLOPT_URL、 "http://www.example.com/");
curl_setopt($ ch、CURLOPT_RETURNTRANSFER、1);

curl_setopt($ ch、CURLOPT_COOKIEJAR、'/tmp/cookies.txt');
curl_setopt($ ch、CURLOPT_COOKIEFILE、'/tmp/cookies.txt');

$ output = curl_exec($ ch);
$ info = curl_getinfo($ ch);
curl_close($ ch);

CURLOPT_COOKIEJARは、cURLがサーバーから送信されたCookieを配置するファイルであり、CURLOPT_COOKIEFILEは、cURLで送信するためのCookieを含むファイルです(同じファイルに設定すると、Cookieファイルになります)。

別のオプションは、結果から手動でCookieを読み取り(CURLOPT_HEADERを「1」に設定します。結果ヘッダーを$ outputに配置します)、CURLOPT_COOKIEを介してCookieを送信します(「foo = bar; bar = foo;」の形式のCookieのリストに設定します)。

注-php.iniでlibcurlを有効にする必要があります

于 2011-01-17T12:01:00.337 に答える