首页 > 作文

php curl操作API接口类完整示例

更新时间:2023-04-07 08:41:12 阅读: 评论:0

本文实例讲述了php curl操作api接口类。分享给大家供大家参考,具体如下:

<?phpnamespace curl;/** * created by phpstorm. * ur: administrator * date: 2017/6/16 * time: 9:54 */class apiclient{//请求的token const token='token_str'; //请求url private $url; //请求的类型 private $requesttype; //请求的数据 private $data; //curl实例 private $curl; public $status; private $headers = array(); /**  * [__construct 构造方法, 初始化数据]  * @param [type] $url  请求的服务器地址  * @param [type] $requesttype 发送请求的方法  * @param [type] $data 发送的数据  * @param integer $url_model 路由请求方式  */ public function __construct($url, $data = array(), $requesttype = 'get') {  //url是必须要传的,并且是符合pathinfo模式的路径  if (!$url) {   return fal;  }  $this->requesttype = strtolower($requesttype);  $paramurl = '';  // pathinfo模式  if (!empty($data)) {   foreach ($data as $key => $value) {    $paramurl.= $key . '=' . $value.'&';   }   $url = $url .'?'. $paramurl;  }  //初始化类中的数据  $this->url = $url;  $this->data = $data;  try{   if(!$this->curl = curl_init()){    throw new exception('curl初始化错误:');   };  }catch (exception $e){   echo '<pre>';   print_r($e->getmessage());   echo '</pre>';  }  curl_topt($this->curl, curlopt_url, $this->url);  curl_topt($this->curl, curlopt_retu学院代码rntransfer, 1);  //curl_topt($this->curl, curlopt_header, 1); } /**  * [_post 设置get请求的参数]  * @return [type] [description]  */ public function _get() { } /**  * [_post 设置post请求的参数]  * post 新增资源  * @return [type] [description]  */ public function _post() {  curl_topt($this->curl, curlopt_post, 1);  curl_topt($this->curl, curlopt_postfields, $this->data); } /**  * [_put 设置put请求]  * put 更新资源  * @return [type] [description]  */ public function _put() {  curl_topt($this->curl, curlopt_customrequest, 'put'); } /**  * [_delete 删除资源]  * delete 删除资源  * @return [type] [descriptio水浒传第七回n]  */ public function _delet大专升本科怎么升e() {  curl_top高考生t($this->curl, curlopt_customrequest, 'delete'); } /**  * [dorequest 执行发送请求]  * @return [type] [description]  */ public function dorequest() {  //发送给服务端验证信息  if((null !== lf::token) && lf::token){   $this->headers = array(    'client-token:'.lf::token,//此处不能用下划线    'client-code:'.$this->tauthorization()   );  }  //发送头部信息  $this->theader();  //发送请求方式  switch ($this->requesttype) {   ca 'post':    $this->_post();    br导员eak;   ca 'put':    $this->_put();    break;   ca 'delete':    $this->_delete();    break;   default:    curl_topt($this->curl, curlopt_httpget, true);    break;  }  //执行curl请求  $info = curl_exec($this->curl);  //获取curl执行状态信息  $this->status = $this->getinfo();  return json_decode($info); } /**  * 设置发送的头部信息  */ private function theader(){  curl_topt($this->curl, curlopt_httpheader, $this->headers); } /**  * 生成授权码  * @return string 授权码  */ private function tauthorization(){  $authorization = md5(substr(md5(lf::token), 8, 24).lf::token);  return $authorization; } /**  * 获取curl中的状态信息  */ public function getinfo(){  return curl_getinfo($this->curl); } /**  * 关闭curl连接  */ public function __destruct(){  curl_clo($this->curl); }}

更多关于php相关内容感兴趣的读者可查看本站专题:《php curl用法总结》、《php网络编程技巧总结》、《php数组(array)操作技巧大全》、《php字符串(string)用法总结》、《php数据结构与算法教程》及《php中json格式数据操作技巧汇总》

希望本文所述对大家php程序设计有所帮助。

本文发布于:2023-04-07 08:41:11,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/2472a964138a918a454307e6e7556498.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:php curl操作API接口类完整示例.doc

本文 PDF 下载地址:php curl操作API接口类完整示例.pdf

标签:数据   初始化   信息   资源
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图