Maison > Article > développement back-end > php里有相当于Asp.Net中 CookieContainer的东西吗?
在Asp.Net中,访问页面可通过下面的函数来完成,postData是需要Post指定url的数据:
public string getHtml(string url, CookieContainer cookie, byte[] postData);
在php中如何实现呢?是不是可以这样写呢?
<?phpfunction getHtml($url,$tmpFile,$postData){ $ch = curl_init($url); curl_setopt($ch,CURLOPT_HEADER,0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_COOKIEJAR, $tmpFile); curl_setopt($ch, CURLOPT_COOKIEFILE, $tmpFile); if($postData!=NULL) { curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); } $content=curl_exec($ch); curl_close($ch); return $content;}?>
CURLOPT_COOKIEJAR 用于连接关闭时保存cookie到文件
CURLOPT_COOKIEFILE 用于连接时将文件中的cookie发送出去
CURLOPT_COOKIE 用于连接时将变量中的cookie发送出去
是否都要使用,取决于你的应用场景
保存到文件是默认动作
你可以通过设定 CURLOPT_READFUNCTION 用自己的函数来处理
多谢版主指导~~~