• 技术文章 >后端开发 >PHP问题

    php curl 怎么只获取数据

    藏色散人藏色散人2021-11-19 10:12:04原创269

    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视频教程

    以上就是php curl 怎么只获取数据的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php curl
    上一篇:php soap是什么意思 下一篇:php怎么实现数值转十进制
    千万级数据并发解决方案

    相关文章推荐

    • PHP中如何使用cURL获取JSON数据并解码• php curl数据传不过去怎么办• win7下php如何安装curl扩展• php socket和curl有什么不同• php curl 错误捕获的方法
    1/1

    PHP中文网