php版微信自动获取收货地址api用法示例

5年以前  |  阅读数:656 次  |  编程语言:PHP 

本文实例讲述了php版微信自动获取收货地址api用法。分享给大家供大家参考,具体如下:

微信公众平台现在是越来越强大了,我们可以通过各种api接口来与平台对接获取对应的数据了,下面来看一个由php实现的微信自动获取收货地址api程序,具体如下.

关于接口的说明我就不介绍了,在官方可以看到下面只看处理程序.


    public function get_address_api() {
      $APPID=C('APPID');
      $SCRETID=C('SCRETID');
      if (!isset($_GET['code'])) {
        $backurl = $this->get_url();
        $url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$APPID."&redirect;_uri=".urlencode($backurl)."&response;_type=code&scope;=jsapi_address&state;=123#wechat_redirect";
        // snsapi_userinfo
        Header("Location: $url");
        exit;
      } else {
        $code = $_GET['code'];
        $url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$APPID."&secret;=".$SCRETID."&code;=".$code."&grant;_type=authorization_code";
        $re = file_get_contents($url);
        $rearr = json_decode($re,true);
        $backurl = $this->get_url();
        $openid = $rearr['openid'];
        $unionid = $rearr['unionid'];
        $asstoken = $rearr['access_token'];
        S('jsapi_address_token'.$openid,$asstoken,7200);
        $data['appid']=$APPID;
        $data['url']=$backurl;
        $data['timestamp']=time();
        $data['timestamp']= (string)($data['timestamp']);
        $data['noncestr']=$this->getRandStr(10);
        $data['accesstoken']=$asstoken;
        foreach ($data as $k => $v) {
          $Parameters[$k] = $v;
        }
        //签名步骤一:按字典序排序参数
        ksort($Parameters);
        $String = $this->formatBizQueryParaMap($Parameters, false);
        $data['addrsign']=SHA1($String);
        $this->assign('data',$data);
      }
      $this->siteDisplay('address_api');
    }

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP微信开发技巧汇总》、《PHP编码与转码操作技巧汇总》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

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

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8