本文操作环境:windows7系统、php7.1版、dell g3电脑
php curl 怎么只获取数据?
php 使用 curl 获取数据
第一种,post 和 get 合并
function http_curl($url, $type = 'get', $data = ''){ $cl = curl_init();//初始化 curl_setopt($cl, curlopt_url, $url);//设置 curl 传输选项 curl_setopt($cl, curlopt_returntransfer, 1);// 将curl_exec()获取的信息以字符串返回,而不是直接输出。curl_setopt($cl, curlopt_ssl_verifypeer, false);curl_setopt($cl, curlopt_ssl_verifyhost, false); if($type == 'post'){ curl_setopt($cl, curlopt_post, 1);//发送 post 请求,类型为:application/x-www-form-urlencoded curl_setopt($cl, curlopt_postfields, $data); } $output = curl_exec($cl);//执行 curl 会话 curl_close($cl); return $output;}
第二种 post 和 get分开
post
$url = "http://localhost/web_services.php";$post_data = array ("username" => "bob","key" => "12345"); $ch = curl_init(); curl_setopt($ch, curlopt_url, $url);curl_setopt($ch, curlopt_returntransfer, 1);// post数据curl_setopt($ch, curlopt_post, 1);curl_setopt($ch, curlopt_ssl_verifypeer, false);curl_setopt($ch, curlopt_ssl_verifyhost, false);// post的变量curl_setopt($ch, curlopt_postfields, $post_data); $output = curl_exec($ch);curl_close($ch); //打印获得的数据print_r($output);
get
//初始化$ch = curl_init(); //设置选项,包括urlcurl_setopt($ch, curlopt_url, "http://www.jb51.net");curl_setopt($ch, curlopt_returntransfer, 1);curl_setopt($ch, curlopt_header, 0); curl_setopt($ch, curlopt_ssl_verifypeer, false); curl_setopt($ch, curlopt_ssl_verifyhost, false); //执行并获取html文档内容$output = curl_exec($ch); //释放curl句柄curl_close($ch); //打印获得的数据print_r($output);
以上方式获取到的数据是json格式的
使用 json_decode($output,true)可解析为数组;使用 json_decode($output) 可解析为对象
参数说明:
$url :要请求的url地址,如果是get方式请求,可以把参数直接加到url后面
$type:请求方式
$data:post方式请求时携带的参数
curl_init()初始化一个curl会话
curl_setopt()设置一个curl传输选项
curl_exec()执行一个curl会话
curl_close()关闭一个curl会话
推荐学习:《php视频教程》
以上就是php curl 怎么只获取数据的详细内容。