2011-01-14 3 views
5

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

+0

の可能重複[PHP - のfile_get_contentsで送信したクッキー](http://stackoverflow.com/questions/3431160/php-send-cookie -with-file-get-contents) – Gordon

+0

possiblr [最初の応答から次の要求へのクッキーのコピー]の複製(http://stackoverflow.com/questions/4212442/copying-cookies-from-first-response-to-next-リクエスト) – Gordon

+0

ゴードン - もう1つあなたはこの質問を閉じるために私に納得させるかもしれません;) – agsamek

答えて

6

cURL? - それは簡単で、クッキーをサポートします。

編集19.1 - ここCURLOPT_COOKIEJARは、サーバから送信されたクッキーを置くカールファイルで、CURLOPT_COOKIEFILEは(それがファイルをクッキーになります同じものに設定する)のcURLで送信するためのクッキーを持つファイルである例

 
$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); 

です。

もう1つのオプションは結果からクッキーを手動で読み込みます(CURLOPT_HEADERを '1'に設定すると結果ヘッダが$出力になります)、CURLOPT_COOKIE(クッキーのリストに 'foo = bar; bar = FOO;」)

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

+0

currenctスクリプトのクッキーとパラメータを渡すソースコードをここに提供してください。このライブラリは標準のPHPホスティングで利用できますか? – agsamek

+0

追加された例:-) – SergeS

+0

ありがとうございます.btw- libcurlなしでこれを行うことは可能ですか? – agsamek