首頁  >  文章  >  後端開發  >  php curl 怎麼只獲取數據

php curl 怎麼只獲取數據

藏色散人
藏色散人原創
2021-11-19 10:12:041944瀏覽

php curl取得資料的方法:1、透過「function http_curl($url, $type = 'get', $data = ''){...}」方法取得資料;2、分別使用POST和GET取得資料即可。

php curl 怎麼只獲取數據

本文操作環境: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