这篇文章主要介绍“php curl如何只获取数据”,在日常操作中,相信很多人在php curl如何只获取数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php curl如何只获取数据”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
php curl获取数据的方法:1、通过“function http_curl($url, $type = 'get', $data = ''){...}”方法获取数据;2、分别用POST和GET获取数据即可。
本文操作环境: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();
//设置选项,包括URL
curl_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 curl如何只获取数据”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。