本篇文章给大家带来的内容是关于php访问url的两种方法示例(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
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", "over_time:22222222222", ); //初始化 $curl = curl_init(); //设置抓取的url curl_setopt($curl, CURLOPT_URL, $durl); //设置头文件的信息作为数据流输出 curl_setopt($curl, CURLOPT_HEADER, false); //设置获取的信息以文件流的形式返回,而不是直接输出。 curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); //设置post方式提交 curl_setopt($curl, CURLOPT_POST, true); // 设置post请求参数 curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data); // CURLINFO_HEADER_OUT选项可以拿到请求头信息 curl_setopt($curl, CURLINFO_HEADER_OUT, 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);
相关推荐:
以上是php访问url的两种方法示例(get和post代码)的详细内容。更多信息请关注PHP中文网其他相关文章!