php版微信小店API二次开发及使用示例
网络编程 2021-07-05 08:23www.168986.cn编程入门
这篇文章主要介绍了php版微信小店API二次开发及使用方法,结合实例形式分析了针对微信小店API的调用及使用方法,需要的朋友可以参考下
本文实例讲述了php版微信小店API二次开发及使用方法。分享给大家供大家参考,具体如下
1. weixiaodian.php页面
<?php class wXd { public $AppID = ""; public $AppSecret = ""; public $OutPut = ""; public $AessToken = ""; public $ID = ""; public $HandleAT = array(); public $Logistics = array(); public function __construct($ID = '0'){ $this->ID = $ID; $this->sLogisticsList(); } public function cUrlRequest($url,$data = null){ $curl = curl_init(); curl_set($curl, CURLOPT_URL, $url); curl_set($curl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_set($curl, CURLOPT_SSL_VERIFYHOST, FALSE); if (!empty($data)){ curl_set($curl, CURLOPT_POST, 1); curl_set($curl, CURLOPT_POSTFIELDS, $data); } curl_set($curl, CURLOPT_RETURNTRANSFER, 1); $output = curl_exec($curl); curl_close($curl); return $output; } //获取ACCESSTOKEN public function sAcessToken(){ $this->HandleAT = $this->gAessToken(); if($this->HandleAT->expire_time < time()){ $appid = $this->AppID; $appsecret = $this->AppSecret; $url = "https://api.weixin.qq./cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$appsecret; $result = https_request($url); //echo '<pre>'; var_dump($result);die; $jsoninfo = json_decode($result, true); $aess_token = $jsoninfo["aess_token"]; $this->pAessToken($aess_token); return $aess_token; } else{ return $this->HandleAT->aess_token; } } //保存ACCESSTOKEN public function pAessToken($aesstoken){ $Path = $_SERVER['DOCUMENT_ROOT']."/jSon_file/aess_token_".$this->ID.".json"; //print_r($Path); if(!file_exists($Path)){ touch($Path); chmod($Path,0777); } $data['expire_time'] = time() + 7000; $data['aess_token'] = $aesstoken; $fp = fopen($Path, "w"); fwrite($fp, json_encode($data)); fclose($fp); } //读取ACCESSTOKEN public function gAessToken(){ $Path = $_SERVER['DOCUMENT_ROOT']."/jSon_file/aess_token_".$this->ID.".json"; if(!file_exists($Path)){ $data['expire_time'] = 0; $data['aess_token'] = ''; } else{ $data = json_decode(file_get_contents($Path)); //print_r($data); } return $data; } //获取所有商品 public function gStateProduct($state = 0){ //https://api.weixin.qq./merchant/getbystatus?aess_token=ACCESS_TOKEN //{"status": 0} $this->AessToken = $this->sAcessToken(); $url = "https://api.weixin.qq./merchant/getbystatus?aess_token=".$this->AessToken; //print_r($this->AessToken); $ResData = $this->cUrlRequest($url,'{"status": '.$state.'}'); //echo "<pre>"; print_r( json_decode($ResData) ); } //设置微小店物流支持列表 public function sLogisticsList(){ $this->Logistics['Fsearch_code'] = "邮政EMS"; $this->Logistics['002shentong'] = "申通快递"; $this->Logistics['066zhongtong'] = "中通速递"; $this->Logistics['056yuantong'] = "圆通速递"; $this->Logistics['042tiantian'] = "天天快递"; $this->Logistics['003shunfeng'] = "顺丰速运"; $this->Logistics['059Yunda'] = "韵达快运"; $this->Logistics['064zhaijisong'] = "宅急送"; $this->Logistics['020huitong'] = "汇通快运"; $this->Logistics['zj001yixun'] = "易迅快递"; } //获取订单详情 public function gOrderInfo($order){ $this->AessToken = $this->sAcessToken(); //print_r($this->AessToken); $url = "https://api.weixin.qq./merchant/order/getbyid?aess_token=".$this->AessToken; $ResData = $this->cUrlRequest($url,'{"order_id": "'.$order.'"}'); //$url = "https://api.weixin.qq./merchant/order/getbyfilter?aess_token=".$this->AessToken; //$ResData = $this->cUrlRequest($url,'{"status": 2}'); print_r( json_decode($ResData) ); } //查询全部订单 public function gOrderAll($data = array()){ $this->AessToken = $this->sAcessToken(); $url = "https://api.weixin.qq./merchant/order/getbyfilter?aess_token=".$this->AessToken; if(!empty($data)){ $data = json_encode($data); } else{ $firstday = strtotime(date("Y-m-01",time())); $data = array('begintime' => $firstday,'endtime' => strtotime("$firstday +1 month -1 day")); $data = json_encode($data); } $ResData = $this->cUrlRequest($url,$data); print_r( json_decode($ResData) ); } //设置订单发货 public function sOrderDelivery($data = array("need_delivery" => '0')){ $this->AessToken = $this->sAcessToken(); $url = "https://api.weixin.qq./merchant/order/setdelivery?aess_token=".$this->AessToken; if(!empty($data)){ $data = json_encode($data); } else{ $data = array("need_delivery" => '0'); $data = json_encode($data); } $ResData = $this->cUrlRequest($url,$data); print_r( json_decode($ResData) ); } //关闭订单 public function sOrderClose($order){ $this->AessToken = $this->sAcessToken(); $url = "https://api.weixin.qq./merchant/order/close?aess_token=".$this->AessToken; $ResData = $this->cUrlRequest($url,'{"order_id": "'.$order.'"}'); print_r( json_decode($ResData) ); } }
2. 页面执行代码
<?php include_once 'class/weixiaodian.php'; $wXd = new wXd(); echo "<pre>"; //查询全部商品 $wXd->gStateProduct(); //获取订单信息 $wXd->gOrderInfo('12963133879983601645'); //关闭订单 $wXd->sOrderClose('12963133879983600740'); //发货订单设置 $data['need_delivery'] = '1'; $data['order_id'] = '12963133879983600667'; $data['delivery_pany'] = '059Yunda'; $data['delivery_track_no'] = '1000464090326'; $wXd->sOrderDelivery($data); //获取所有订单 $wXd->gOrderAll(); echo "</pre>";
更多关于PHP相关内容感兴趣的读者可查看本站专题《》、《》、《》、《》、《》、《》及《》
希望本文所述对大家PHP程序设计有所帮助。
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程