ホームページ > バックエンド開発 > PHPチュートリアル > php里有无异于Asp.Net中 CookieContainer的东西吗

php里有无异于Asp.Net中 CookieContainer的东西吗

WBOY
リリース: 2016-06-13 11:19:09
オリジナル
960 人が閲覧しました

php里有相当于Asp.Net中 CookieContainer的东西吗?
在Asp.Net中,访问页面可通过下面的函数来完成,postData是需要Post指定url的数据:

public string getHtml(string url, CookieContainer cookie, byte[] postData);



在php中如何实现呢?是不是可以这样写呢?

<br /><?php<br />function getHtml($url,$tmpFile,$postData)<br />{<br />	$ch = curl_init($url);<br />	curl_setopt($ch,CURLOPT_HEADER,0);<br />	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  <br />	curl_setopt($ch, CURLOPT_COOKIEJAR, $tmpFile);<br />	curl_setopt($ch, CURLOPT_COOKIEFILE, $tmpFile); <br />	if($postData!=NULL)<br />	{<br />		curl_setopt($ch, CURLOPT_POST, 1);  <br />		curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); <br />	}<br />	$content=curl_exec($ch);  <br />	curl_close($ch); <br />	return $content;<br />}<br />?>
ログイン後にコピー


下面这两句是否都不能少呢?
curl_setopt($ch, CURLOPT_COOKIEJAR, $tmpFile);
curl_setopt($ch, CURLOPT_COOKIEFILE, $tmpFile); 

只能通过临时文件吗?还有其他改进的方法吗?O(∩_∩)O谢谢啦~~~~~~


------解决方案--------------------
CURLOPT_COOKIEJAR 用于连接关闭时保存cookie到文件
CURLOPT_COOKIEFILE 用于连接时将文件中的cookie发送出去
CURLOPT_COOKIE 用于连接时将变量中的cookie发送出去
是否都要使用,取决于你的应用场景

保存到文件是默认动作
你可以通过设定 CURLOPT_READFUNCTION 用自己的函数来处理
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート