相思资源网 Design By www.200059.com
本文实例讲述了php版微信小店API二次开发及使用方法。分享给大家供大家参考,具体如下:
1. weixiaodian.php页面:
<"";
public $AppSecret = "";
public $OutPut = "";
public $AccessToken = "";
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_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
if (!empty($data)){
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
}
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($curl);
curl_close($curl);
return $output;
}
//获取ACCESSTOKEN
public function sAcessToken(){
$this->HandleAT = $this->gAccessToken();
if($this->HandleAT->expire_time < time()){
$appid = $this->AppID;
$appsecret = $this->AppSecret;
$url = "https://api.weixin.qq.com/cgi-bin/token".$appid."&secret=".$appsecret;
$result = https_request($url);
//echo '<pre>'; var_dump($result);die;
$jsoninfo = json_decode($result, true);
$access_token = $jsoninfo["access_token"];
$this->pAccessToken($access_token);
return $access_token;
}
else{
return $this->HandleAT->access_token;
}
}
//保存ACCESSTOKEN
public function pAccessToken($accesstoken){
$Path = $_SERVER['DOCUMENT_ROOT']."/jSon_file/access_token_".$this->ID.".json";
//print_r($Path);
if(!file_exists($Path)){
touch($Path);
chmod($Path,0777);
}
$data['expire_time'] = time() + 7000;
$data['access_token'] = $accesstoken;
$fp = fopen($Path, "w");
fwrite($fp, json_encode($data));
fclose($fp);
}
//读取ACCESSTOKEN
public function gAccessToken(){
$Path = $_SERVER['DOCUMENT_ROOT']."/jSon_file/access_token_".$this->ID.".json";
if(!file_exists($Path)){
$data['expire_time'] = 0;
$data['access_token'] = '';
}
else{
$data = json_decode(file_get_contents($Path));
//print_r($data);
}
return $data;
}
//获取所有商品
public function gStateProduct($state = 0){
//https://api.weixin.qq.com/merchant/getbystatus"status": 0}
$this->AccessToken = $this->sAcessToken();
$url = "https://api.weixin.qq.com/merchant/getbystatus".$this->AccessToken;
//print_r($this->AccessToken);
$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->AccessToken = $this->sAcessToken();
//print_r($this->AccessToken);
$url = "https://api.weixin.qq.com/merchant/order/getbyid".$this->AccessToken;
$ResData = $this->cUrlRequest($url,'{"order_id": "'.$order.'"}');
//$url = "https://api.weixin.qq.com/merchant/order/getbyfilter".$this->AccessToken;
//$ResData = $this->cUrlRequest($url,'{"status": 2}');
print_r( json_decode($ResData) );
}
//查询全部订单
public function gOrderAll($data = array()){
$this->AccessToken = $this->sAcessToken();
$url = "https://api.weixin.qq.com/merchant/order/getbyfilter".$this->AccessToken;
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->AccessToken = $this->sAcessToken();
$url = "https://api.weixin.qq.com/merchant/order/setdelivery".$this->AccessToken;
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->AccessToken = $this->sAcessToken();
$url = "https://api.weixin.qq.com/merchant/order/close".$this->AccessToken;
$ResData = $this->cUrlRequest($url,'{"order_id": "'.$order.'"}');
print_r( json_decode($ResData) );
}
}
2. 页面执行代码
<"<pre>";
//查询全部商品
$wXd->gStateProduct();
//获取订单信息
$wXd->gOrderInfo('12963133879983601645');
//关闭订单
$wXd->sOrderClose('12963133879983600740');
//发货订单设置
$data['need_delivery'] = '1';
$data['order_id'] = '12963133879983600667';
$data['delivery_company'] = '059Yunda';
$data['delivery_track_no'] = '1000464090326';
$wXd->sOrderDelivery($data);
//获取所有订单
$wXd->gOrderAll();
echo "</pre>";
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP微信开发技巧汇总》、《PHP编码与转码操作技巧汇总》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无php版微信小店API二次开发及使用示例的评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。