微信小店二次开发_php版微信小店API二次开发及使用示例

本文实例讲述了php版微信小店API二次开发及使用方法。分享给大家供大家参考,具体如下:

1. weixiaodian.php页面:

class wXd

{

public $AppID = "";

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?grant_type=client_credential&appid=".$appid."&secret=".$appsecret;

$result = https_request($url);

//echo '

'; 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?access_token=ACCESS_TOKEN

//{"status": 0}

$this->AccessToken = $this->sAcessToken();

$url = "https://api.weixin.qq.com/merchant/getbystatus?access_token=".$this->AccessToken;

//print_r($this->AccessToken);

$ResData = $this->cUrlRequest($url,'{"status": '.$state.'}');

//echo "

";

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?access_token=".$this->AccessToken;

$ResData = $this->cUrlRequest($url,'{"order_id": "'.$order.'"}');

//$url = "https://api.weixin.qq.com/merchant/order/getbyfilter?access_token=".$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?access_token=".$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?access_token=".$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?access_token=".$this->AccessToken;

$ResData = $this->cUrlRequest($url,'{"order_id": "'.$order.'"}');

print_r( json_decode($ResData) );

}

}

2. 页面执行代码

include_once 'class/weixiaodian.php';

$wXd = new wXd();

echo "

";

//查询全部商品

$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 "

";

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您下载了本程序,但是该程序存在问题无法运行,那么您可以选择退款或者寻求我们的帮助(如果找我们帮助的话,是需要追加额外费用的)。另外,您不会使用资源的话(这种情况不支持退款),也可以找我们帮助(需要追加额外费用) 爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的工作流程包括以下几个关键步骤: URL收集: 爬虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL可以通过链接分析、站点地图、搜索引擎等方式获取。 请求网页: 爬虫使用HTTP或其他协议向目标URL发起请求,获取网页的HTML内容。这通常通过HTTP请求库实现,如Python中的Requests库。 解析内容: 爬虫对获取的HTML进行解析,提取有用的信息。常用的解析工具有正则表达式、XPath、Beautiful Soup等。这些工具帮助爬虫定位和提取目标数据,如文本、图片、链接等。 数据存储: 爬虫将提取的数据存储到数据库、文件或其他存储介质中,以备后续分析或展示。常用的存储形式包括关系型数据库、NoSQL数据库、JSON文件等。 遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施,如验证码、IP封锁等。爬虫工程师需要设计相应的策略来应对这些挑战。 爬虫在各个领域都有广泛的应用,包括搜索引擎索引、数据挖掘、价格监测、新闻聚合等。然而,使用爬虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值