当前位置:编程学习 > > 正文

phpcurl缺点(PHP封装cURL工具类与应用示例)

时间:2022-01-21 00:17:21类别:编程学习

phpcurl缺点

PHP封装cURL工具类与应用示例

本文实例讲述了PHP封装cURL工具类。分享给大家供大家参考,具体如下:

CurlUtils工具类:

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • <?php
  • /**
  •  * cURL请求工具类
  •  */
  • class CurlUtils {
  •   private $ch;//curl资源对象
  •   /**
  •    * 构造方法
  •    * @param string $url 请求的地址
  •    * @param int $responseHeader 是否需要响应头信息
  •    */
  •   public function __construct($url,$responseHeader = 0){
  •     $this->ch = curl_init($url);
  •     curl_setopt($this->ch,CURLOPT_RETURNTRANSFER,1);//设置以文件流的形式返回
  •     curl_setopt($this->ch,CURLOPT_HEADER,$responseHeader);//设置响应头信息是否返回
  •   }
  •   /**
  •    * 析构方法
  •    */
  •   public function __destruct(){
  •     $this->close();
  •   }
  •   /**
  •    * 添加请求头
  •    * @param array $value 请求头
  •    */
  •   public function addHeader($value){
  •     curl_setopt($this->ch, CURLOPT_HTTPHEADER, $value);
  •   }
  •   /**
  •    * 发送请求
  •    * @return string 返回的数据
  •    */
  •   private function exec(){
  •     return curl_exec($this->ch);
  •   }
  •   /**
  •    * 发送get请求
  •    * @return string 请求返回的数据
  •    */
  •   public function get(){
  •     return $this->exec();
  •   }
  •   /**
  •    * 发送post请求
  •    * @param arr/string $value 准备发送post的数据
  •    * @param boolean $https 是否为https请求
  •    * @return string    请求返回的数据
  •    */
  •   public function post($value,$https=true){
  •     if($https){
  •       curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, FALSE);
  •       curl_setopt($this->ch, CURLOPT_SSL_VERIFYHOST, FALSE);
  •     }
  •     curl_setopt($this->ch,CURLOPT_POST,1);//设置post请求
  •     curl_setopt($this->ch,CURLOPT_POSTFIELDS,$value);
  •     return $this->exec();
  •   }
  •   /**
  •    * 关闭curl句柄
  •    */
  •   private function close(){
  •     curl_close($this->ch);
  •   }
  • }
  • 调用实例:

    face++的人脸识别接口

  • ?
  • 1
  • 2
  • 3
  • $curl = new CurlUtils("https://api-cn.faceplusplus.com/facepp/v3/detect");//创建curl对象
  • $value = ['api_key'=>'4Y7GS2sAPGEl-BtQlNw5Iqtq5jGOn87z','api_secret'=>'oQnwwJhS2mcm4vflKvgm972up9sLN8zj','image_url'=>'http://avatar.csdn.net/9/7/5/1_baochao95.jpg','return_attributes'=>'gender,age,glass'];//准备post的值
  • echo $curl->post($value);//发送请求
  • 希望本文所述对大家PHP程序设计有所帮助。

    原文链接:https://blog.csdn.net/baochao95/article/details/55105748

    标签:
    上一篇下一篇

    猜您喜欢

    热门推荐