php curl模拟登陆,获取cookie,从端口获取信息。
$post = array(
'password'=>'',
'username'=>''
);
// 网站登陆
$url = "http://localhost/index.php?c=Login&f=loginCheck";
// cookie存放地址
$cookie = dirname(__FILE__) . '/cookie.txt';
// login_post($url, $cookie, $post);
// 模拟登陆,并将cookie保存在文件中
function login_post($url, $cookie, $post)
{
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
curl_exec($curl);
curl_close($curl);
}
$url2 = "http://localhost/index.php?c=User&f=show";
$content = get_content($url2, $cookie);
var_dump($content);
// 模拟登陆后携带cookie,获取用户列表
function get_content($url, $cookie)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie);
$rs = curl_exec($ch);
curl_close($ch);
return $rs;
}