php模拟get和post请求的两个实例
|
get请求 /* * php访问url路径,get请求 */ function curl_file_get_contents($durl){ // header传送格式 $headers = array( "token:1111111111111", "over_time:22222222222", ); // 初始化 $curl = curl_init(); // 设置url路径 curl_setopt($curl,CURLOPT_URL,$durl); // 将 curl_exec()获取的信息以文件流的形式返回,而不是直接输出。 curl_setopt($curl,CURLOPT_RETURNTRANSFER,true) ; // 在启用 CURLOPT_RETURNTRANSFER 时候将获取数据返回 curl_setopt($curl,CURLOPT_BINARYTRANSFER,true) ; // 添加头信息 curl_setopt($curl,CURLOPT_HTTPHEADER,$headers); // CURLINFO_HEADER_OUT选项可以拿到请求头信息 curl_setopt($curl,CURLINFO_HEADER_OUT,true); // 执行 $data = curl_exec($curl); // 打印请求头信息 // echo curl_getinfo($curl,CURLINFO_HEADER_OUT); // 关闭连接 curl_close($curl); // 返回数据 return $data; } post请求 /* * php访问url路径,post请求 * * durl 路径url * post_data array() post参数数据 */ public function curl_file_post_contents($durl,$post_data){ // header传送格式 $headers = array( "token:1111111111111", ); //初始化 $curl = curl_init(); //设置抓取的url curl_setopt($curl,$durl); //设置头文件的信息作为数据流输出 curl_setopt($curl,CURLOPT_HEADER,false); //设置获取的信息以文件流的形式返回,而不是直接输出。 curl_setopt($curl,true); //设置post方式提交 curl_setopt($curl,CURLOPT_POST,true); // 设置post请求参数 curl_setopt($curl,CURLOPT_POSTFIELDS,$post_data); // CURLINFO_HEADER_OUT选项可以拿到请求头信息 curl_setopt($curl,true); //执行命令 $data = curl_exec($curl); // 打印请求头信息 // echo curl_getinfo($curl,CURLINFO_HEADER_OUT); //关闭URL请求 curl_close($curl); //显示获得的数据 return $data; } 注:调用后可以通过json_decode来解析返回结果:如: $data=$this->curl_file_post_contents($dataurl,$post_data); $dataarr= json_decode($data,true); (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
