php微信开发_php微信开发如何获取当前位置 - CSDN
精华内容
参与话题
  • PHP实现微信公众平台开发-基础篇

    万次阅读 2017-12-20 21:28:09
    微信应用: 平台角色 微信用户: 普通用户 对微信应用而言: 微信应用给微信公众账号和微信用户提供了信息交互,获取资讯的一个平台。 对微信用户而言: 用户可通过微信这个平台去订阅自己感兴趣的微信公众账号,...

    第1章 微信公众账号及申请流程

    微信三角色关系

    微信公众账号: 充当的是自媒体角色
    微信应用: 平台角色
    微信用户: 普通用户
    对微信应用而言: 微信应用给微信公众账号和微信用户提供了信息交互,获取资讯的一个平台。
    对微信用户而言: 用户可通过微信这个平台去订阅自己感兴趣的微信公众账号,来获取资讯和服务。
    对微信公众账号而言: 作为一个自媒体可以将自己的网站应用,移动端应用,通过微信应用这个平台提供给微信用户进行使用,可以推送信息给用户。

    订阅号,服务号,企业号展示

    1. 订阅号
    2. 服务号
    3. 企业号
      订阅号主要是针对于个人和组织
      服务号主要是提供给企业和组织,不适用于个人。
      企业号主要提供给企业,特别是大型企业

    微信认证介绍

    公众账号认证
    1. 价格 300元/次
    2. 认证与不认证的区别:微信提供的接口权限有差异

    订阅号申请流程

    申请地址: https://mp.weixin.qq.com

    第2章 微信公众账号的工作原理和接口

    数据交互流程

    第三方服务器
    微信服务器
    微信用户
    第一种场景:微信用户,微信服务器,第三方服务器之间
    微信用户发送请求给微信服务器, 微信服务器收到用户请求后,把信息发送到第三方服务器,第三方服务器收到微信推送过来的请求后,响应给
    微信服务器,微信服务器将第三方服务器响应过来的数据用特定的数据结构,发送给普通用户。
    第二种场景: 微信服务器与第三方服务器之间
    第三方服务器与微信服务器之间进行的: 微信第一次认证第三方服务器合法性的时候,推送有特定参数的GET/POST请求给第三方服务器,第三方服务器可以获取用户的一些信息。

    开发者模式和编辑模式介绍

    1. 编辑模式
    2. 开发者模式

    开发者模式: 通过调用微信一些公用接口来完成自身业务
    编辑模式: 微信公众平台提供给微信公众账号管理者一个简单的可视化操作的界面
    这两者主要的区别, 编辑模式只能完成开发者模式中一些功能。

    编辑模式介绍

    编辑模式主要是在 微信公众平台提供给
    功能的添加, 功能的使用, 开发推荐开发者模式

    接口介绍

    基础接口的内容介绍
    1. 事件推送–订阅公众账号 (微信用户在微信中关注自己感兴趣的公众账号之后微信服务器会推送一个订阅事件让与公众账号绑定的第三方服务器上面)
    2. 消息响应–发送普通消息,接受普通信息
    3. 基础接口– 获取access_token, 获取微信服务器地址

    第3章 接入微信公众账号API

    验证配置介绍

    微信公众号管理后台: 开发–> 基本配置 –> 服务器配置

    验证参数介绍

    1. 将token, timestamp, nonce 三个参数进行字典序列排序
    2. 将三个参数拼接成一个字符串进行 sha1加密
    3. 开发者获得加密后的字符串可与signature对比, 标识该请求来源于微信

    填写验证配置

    生成公网可访问的脚本文件

    采用内网穿透,或者使用独立的主机域名,在上面进行代码编写

    url验证的代码实现

    <?php
    
    // 1.将从微信平台通过get传送过来的参数 timestamp, noce,token按字典排序
            $timestamp = $_GET['timestamp'];
            $noce = $_GET['nonce'];
            $token = $_GET['weixin'];
            $signature = $_GET['signature'];
            $array = array($timestamp, $nonce, $token);
            sort($array);
            // 2. 将排序后的三个参数拼接后用sha1加密
            $tmpstr = implode('', $array);
            $tmpstr = sha1($tmpstr);
            // 3.将加密后的字符串与signature进行对比, 判断该请求是否来自微信
            if ($tmpstr == $signature) {
                echo $_GET['echostr'];
                exit;
            }

    提交验证接口

    提交成功:说明我们完成了微信API,在我们应用中的接入

    展开全文
  • 本压缩包是传智播客“PHP微信公众平台开发”课程的官方笔记和源码,学习视频下载链接为http://yun.itheima.com/course/163.html
  • 老版本的微信公众平台开发示例demo和新版本的微信公众平台开发示例demo
  • 一款完整的php微信开发类,一款完整的php微信开发类,一款完整的php微信开发
  • PHP 一一 微信公众号开发(二次开发)

    万次阅读 多人点赞 2018-01-11 19:13:59
    两个星期前,学校请了传智播客的老师给我们做实训,讲了一个微信公众号开发,感觉挺有意思,在这里做一下记录,以便以后复习. 一、了解微信公众平台 1. 什么是微信公众平台? 微信公众平台是腾讯为了让用户申请和管理...

    两个星期前,学校请了传智播客的老师给我们做实训,讲了一个微信公众号开发,感觉挺有意思,在这里做一下记录,以便以后复习.

    一、了解微信公众平台

    1. 什么是微信公众平台?

    微信公众平台是腾讯为了让用户申请和管理微信公众账号而推出的一个Web平台,而微信公众账号的操作管理在这个平台下进行.换句话说,凡是关注自己公众号的用户,在这个网站中都可以去管理他们. 平台地址: https://mp.weixin.qq.com/

    2. 微信的两种运行模式

    编辑模式与开发者模式,这两种模式是互斥的.

    编辑模式是平台内置的web系统,不需要专业的技术.

    开发者模式可以通过腾讯的API接口进行二次开发,需要专业的PHP技术.

    3. 首先要在平台地址中,创建一个订阅号.

    订阅号和服务号的区别: 订阅号是针对个人的,服务号针对有营业执照的商户.


    二、微信公众平台开发(开发者模式)

    0. 在讲下面的一些知识之前: 大家首先把这个网盘中的一些 要使用的的文件,下载下来,后面会使用到.

    网盘地址: 链接:https://pan.baidu.com/s/1qZzwLGC 密码:v9vk

    1. 开发者模式原理图


    根据上图,我们联想平时我们关注的微信公众号,当我们发消息给公众号,公众号都会自动回复我们一些东西. 

    还有一点,我们必须要有自己的服务器,在阿里云买一个服务器肯定需要钱啊,我们不想花钱怎么办?

    这里就要使用到 内网渗透 的技术,把我们自己的电脑充当服务器(拥有自己的域名).

    2、在开发之前,首先我们要下载并启动PhpStudy,做过php开发的,都应该了解什么是phpStudy.他是php的配置环境,具体参考链接中的PHP环境配置:

    http://blog.csdn.net/m0_37989980/article/details/78971478 

    3、NATAPP内网渗透技术.(将本机充当一个服务器)

    http://natapp.cn/ 使用手机号注册一个自己的账号.如下图所示


    此时我们需要下载一个natapp的客户端. 我在这里提供了网盘地址:  大家可以下载.

    1): 首先将下载好的natapp.exe 与 config.ini 同时赋值到 D盘的natapp目录下(这个natapp目录是自己创建的)

    2): 打开config.ini中的隧道密钥,改成我们自己的密钥.


    这个authtoken就是我们的密钥,把这个密钥复制到config.ini的这个位置


    4): 打开cmd窗口,将刚才D盘下natapp目录下的natapp.exe拖动到命令行中,如下图所示


    这样我们的服务器就已经创建好了,以后我们就可以通过 上面的 http:// 来访问自己的电脑了

    注意: 在运行过程中,cmd命令行不可以关闭/

    5): 下载腾讯提供的API接口, 叫api.php,也在刚才你所下载的网盘文件中.

    我们把api.php文件放到 我们安装的phpStudy的目录下的 PHPTutorial的WWW目录下;


    6): 把api.php放进去之后,打开这个文件, 查看这个文件中的 define("TOKEN","weixin") ,记住这个接口中的密钥是 weixin

    7): 打开我们注册过的微信公众平台,找到工具下 的基本配置


    提交成功后,并点击右侧的启动按钮,就启动成功了.(注意这里有一些注意点:如果提交不成功,多提交几次. 后面有写有哪些注意点)

    8): 此时做到这里就基本上完成了,然后我们可以用自己的微信关注自己所创的公众号.随便发送一条消息.会出现下面问题:


    4、手动开启自动回复(这里有个坑,一定要注意)

    我们使用sublime将www下的api.php 文件打开,做下面操作


    做了这些操作后,我们再向自己的公众号中发送消息,就可以正常回复了!

    三、微信的6大接收接口

    1. 我们想公众号发送文字消息,其就可以回复,发送图片,语音 就无法回复,这是为什么呢?

    只要设置就在api.php接口中.

    2. 微信如何接收消息的?

    在微信公众平台下,打开开发者工具-->消息管理--->接收普通消息下

    其中包括文本消息、图片,语音,图文等消息


    3. 我们来分析一下api.php文件(重点)

    首先 $msgType = "text"; 是表示接收的是什么类型的数据

    $ contentStr 用来返回给我们是什么样的数据.

    如果我们要使用 图片,图文等相关模板,需要将平台中的<XML>文件复制到api.php文件中.

    将我们的需要展示的内容填充进去,就可以了

    四、具体讲解图文消息接口

    1、文本回复接口(文本回复四步走)

    问题:微信公众平台是如何把数据发送给我们的APP的。

    文本回复一共分为这样的几个步骤:

    第一步:组装XML数据


    第二步:定义相关的变量$msgType$contentStr

    第三步:使用sprintf函数,格式化变量到%s的位置

    要用到的知识点:sprintf函数,在实际项目开发主要用于格式化字符串

    sprint(要格式化的字符串,变量1,变量2,变量3...)

    到底有多少个变量呢,就是要格式化的字符串中,有多少个%s就有多少个变量。

    第四步:使用echo输出返回XML数据到微信APP


    2、微信中的图文回复接口(重点中的重点)


    3、编写图文接口(四步走)

    第一步:组装XML数据(设置%s


    XML模板从哪里来,从微信的手册中获取:


    把以上代码复制放到$newsTpl代码中:


    放置完成后,不能立即停止,因为我们还没有放%s呢,必须放置%s


    记住:有几个%s,因为一会还要定义几个变量。

    第二步:设置相关的变量(有几个%s就要定义几个变量)

    我们需要定义6个变量,但是前3个变量,系统默认已经有了,$fromUserName$toUserName$time。所以咱们真正定义的只有3个变量。

    第三步:使用sprintf函数格式化第一步中的字符串

    第四步:使用echo把图文消息返回给微信的APP

    运行结果:

    4、如果微信开发时遇到故障,改如何调试呢?

    打开浏览器,输入http://域名/api.php,看一下语法是否有错误


    如果出现以上代码,代表微信接口没有问题,因为HTTP_RAW_POST_DATA没有经过腾讯服务器,只经过我们自己的服务器,所以报HTTP_RAW_POST_DATA.


    注意点:

    1. 在运行中我们不可以关闭命令行,否则就会出现错误

    2. 要开启phpStudy

    3. 当我们电脑重启后,将natapp.exe拖入到命令行后,会从新生成一个域名.

    3.1 首先先把vaild()方法给打开, 把responseMsg()方法关闭,然后在valid()方法中 添加ob_clean()方法,清除缓存,否则会验证token失败.

    public function valid()
        {
            $echoStr = $_GET["echostr"];
    
            //valid signature , option
            if($this->checkSignature()){
                ob_clean(); 
                echo $echoStr;
                exit;
            }
        }
    3.2 当启动成功后,一定要记住将api.php中的valid()方法注释掉,打开responseMsg()方法

    展开全文
  • 网页授权接口(类似于浏览器通过cookie|session标识客户 微信端通过openid标识) 接口类型(通过网页授权 获取openid) snsapi_base:基本类型 静默授权并自动跳转到回调页的。用户感知的就是直接进入了回调页(往往是...
    • 网页授权接口(类似于浏览器通过cookie|session标识客户 微信端通过openid标识)

    接口类型(通过网页授权 获取openid)

    1. snsapi_base:基本类型
      1. 静默授权并自动跳转到回调页的。用户感知的就是直接进入了回调页(往往是业务页面) 只获取openid
    2. snsapi_userinfo:详细类型
      1. 弹出窗口是否授权 需要用户手动同意,并且由于用户同意过,所以无须关注,就可在授权后获取该用户的基本信息 (openid,昵称,头像,国籍,地理位置...)
      2. 用户管理类接口中的“获取用户基本信息接口”,是在用户和公众号产生消息交互或关注后事件推送后,才能根据用户OpenID来获取用户基本信息。这个接口,包括其他微信接口,都是需要该用户(即openid)关注了公众号后,才能调用成功的。

     

    接口步骤

    1. 用户同意授权 获取code
    2. 通过code换取网页授权access_token
    3. 刷新access_token(如果需要 避免过期)
    4. 拉取用户信息(需scope为snsapi_userinfo) 通过网页授权access_token和openid获取用户基本信息(支持UnionID机制 UnionID机制的作用说明:如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的unionid来区分用户的唯一性,因为同一用户,对同一个微信开放平台下的不同应用(移动应用、网站应用和公众帐号),unionid是相同的。)

     

    关于网页授权access_token和普通access_token的区别(类似于雷锋和雷峰塔)

    1. 微信网页授权是通过OAuth2.0机制实现的,在用户授权给公众号后,公众号可以获取到一个网页授权特有的接口调用凭证(网页授权access_token),通过网页授权access_token可以进行授权后接口调用,如获取用户基本信息;
    2. 其他微信接口,需要通过基础支持中的“获取access_token”接口来获取到的普通access_token调用

     

    基本授权(获取openid)

    • 调用接口获取code

    $url="https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_uri."&response_type=code&scope=snsapi_base&state=123#wechat_redirect" ;

    • 组装参数 appid|appsecret|code调用接口 获取openid

    $url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$appsecret."&code=".$code."&grant_type=authorization_code" ;

     

    详细授权

    • 调用接口获取code

    $url="https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_uri."&response_type=code&scope=snsapi_base&state=123#wechat_redirect" ;

    • 组装参数 appid|appsecret|code调用接口 获取网页授权access_token openid

    $url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$appsecret."&code=".$code."&grant_type=authorization_code" ;

    • 组装参数  网页授权access_token openid 调用接口 拉取用户详细信息

    $url1 = "https://api.weixin.qq.com/sns/userinfo?access_token=".$access_token."&openid=".$openid."&lang=zh_CN" ;

     

     

    /*
    		网页授权
    	*/
    	//获取用户openid
    	public function getBaseInfo() 
    	{
    		//获取code
    		$appid = "XXXXXXX" ;
    		/*
    		调用下面url之后  返回code到  此处的$redirect_uri
    		接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息”的配置选项中,修改授权回调域名 donglingjiu.top
    		*/
    		$redirect_uri = urlencode("http://donglingjiu.top/index/index/getUserOpenId");
    		$url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_uri."&response_type=code&scope=snsapi_base&state=123#wechat_redirect" ;
    		/*
    			scope=snsapi_base 静默跳转 
    		*/
    		header('location:'.$url) ;
    		
    	}
    	public function getUserOpenId() 
    	{
    		//获取网页授权access_token
    
    		$appid = "XXXXXXX" ;
    		$appsecret = "XXXXXXXXX" ;
    		/*
    			scope=snsapi_base
    			静默跳转之后 传过来的code
    		*/
    		$code = $_GET['code'] ;
     		$url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$appsecret."&code=".$code."&grant_type=authorization_code" ;
    		//拉取用户openid
    		$res = $this->http_curl($url,'get') ;
    		dump($res) ;
    		/*
    			此处测试  
    			百度 草料二维码 
    			http://donglingjiu.top/index/index/getBaseInfo 
    			生成二维码之后 手机扫码
    		*/
    	}
    
    	/*
    		详细授权  获取用户 昵称 地理位置 籍贯 头像...
    	*/
    	public function getUserDetail() 
    	{
    		//获取code
    		$appid = "XXXXXXXXX" ;
    		/*
    		调用下面url之后  返回code到  此处的$redirect_uri
    		接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息”的配置选项中,修改授权回调域名 donglingjiu.top
    		*/
    		$redirect_uri = urlencode("http://donglingjiu.top/index/index/getUserInfo");
    		$url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_uri."&response_type=code&scope=snsapi_userinfo&state=123#wechat_redirect" ;
    		/*
    			scope=snsapi_userinfo 手动授权 获取详细信息
    		*/
    		header('location:'.$url) ;
    	}
    	public function getUserInfo() 
    	{
    		//获取网页授权access_token
    
    		$appid = "XXXXXXXXX" ;
    		$appsecret = "XXXXXXXXX" ;
    		/*
    			scope=snsapi_userinfo
    			手动授权 跳转之后 传过来的code
    		*/
    		$code = $_GET['code'] ;
     		$url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$appsecret."&code=".$code."&grant_type=authorization_code" ;
    		$res = $this->http_curl($url,'get') ;
    		$access_token = $res['access_token'] ;
    		$openid = $res['openid'] ;
    		//拉取用户详细信息
    		$url1 = "https://api.weixin.qq.com/sns/userinfo?access_token=".$access_token."&openid=".$openid."&lang=zh_CN" ;
    		$res = $this->http_curl($url1) ;
    		dump($res) ;
    		/*
    			此处测试  
    			百度 草料二维码 
    			http://donglingjiu.top/index/index/getUserDetail 
    			生成二维码之后 手机扫码
    		*/
    	}
    

     

    展开全文
  • PHP微信开发(测试号)-建立链接

    千次阅读 2017-09-28 21:31:22
    PHP微信开发是指将微信与线上服务器建立链接,服务器与用户会通过微信联系起来,用户发送给微信的信息会通过微信发送到服务器上,服务器接收到信息并处理之后再通过微信返回给用户。 用户→微信→服务器→...
    PHP微信开发是指将微信与线上服务器建立链接,服务器与用户会通过微信联系起来,用户发送给微信的信息会通过微信发送到服务器上,服务器接收到信息并处理之后再通过微信返回给用户。
    

    用户→微信→服务器→微信→用户。

    这里以测试号为例,进入微信公众平台技术文档
    地址:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432

    在左侧开始开发目录中找到接口测试号申请

    PHP微信开发(测试号)-建立链接 - L_H_Orz - li_hang的博客

    右侧链接进入进入微信公众帐号测试号申请系统,扫码进入测试号。

    进入后会看到测试号信息。
    PHP微信开发(测试号)-建立链接 - L_H_Orz - li_hang的博客
     appID、appsecret,在获取access_token以及之后调用接口是用很大的作用。

    接口配置信息,用于与服务器建立链接。URL:配置链接地址必须为有效的服务器地址或IP,该地址直接指向服务器用于接收微信消息的文件。Token:通俗理解为口令,链接验证时使用。
     PHP微信开发(测试号)-建立链接 - L_H_Orz - li_hang的博客
    以上微信配置基本完毕。下面开始写代码。(代码写在URL地址最终指向的文件中)。

    ************************************************以下为php文件中的代码**********************************************
    <?php

    //实例化Wechat类
    $wechat = new Wechat();
    //调用index方法
    $wechat -> index();

    class Wechat{

        public $token = 'lhorz';

        public $echostr//用于验证的token
        
        public $FromUserName//消息发送人
        
        public $ToUserName//消息接收人
        
        public $MsgType//消息类型
        
        public $Content//消息内容

        public $Event;  //事件类型

        public $xmlInfo;  //接收到的MXL格式消息
        
        public function __construct() {
            $this -> echostr = $_GET['echostr'];
        }
        
        public function Index()
        {
            if($this -> echostr)
            {
                $this -> checkToken();
            }
            else
            {
                $this -> responseMsg();
            }
        }

        //验证token
        public function checkToken()
        {
            //获取本地定义token
            $token       = $this -> token;
            //接受请求信息
            $signature   = $_GET['signature'];
            $timestamp   = $_GET['timestamp'];
            $nonce       = $_GET['nonce'];
            //将接受的参数放在数组中
            $verify_arr  = [$token,$timestamp,$nonce];
            //对数进行排序
            sort($verify_arr,SORT_REGULAR);
            //将数组转化成字符串
            $verify_str  implode('',$verify_arr);
            //对字符串进行sha1加密
            $verify_sha1 sha1($verify_str);
            //将加密后的字符串和signature进行对比
            if($verify_sha1 != $signature)
            {
                //对比失败返回no
                echo 'no';die;
            }
            //对比成功返回接受到的$echostr
            echo $this -> echostr;die;
        }
        
        //接收信息&&判断类型
        public function responseMsg()
        {   
            //接收请求信息
            $this -> receiveInfo();
            //判断类型
            switch ($this -> MsgType) {
                //文本信息调用返回文本信息回复方法
                case "text": $this -> returnText(); break;
                //事件调用事件返回方法
                case "event": $this -> returnEvent(); break;
            }
        }

        //对事件进行判断
        public function returnEvent()
        {
            //对事件进行判断
         switch ($this -> Event) {
                //关注事件
                case "subscribe" : $this -> returnInfo("这是我的一个测试号,这里有机器人,可以和它聊天。"); break;
                //用户当前所在地理位置(经度、纬度)
                case "LOCATION" : $this -> returnLOCATION(); break;
            }
        }

        //获取当前用户经纬度,并调用高德地图回复地址
        public function returnLOCATION()
        {
         $Longitude = $this -> xmlInfo -> Longitude; //经度
         $Latitude  = $this -> xmlInfo -> Latitude; //伟度
         $gaode     = 'ba2cd75562d3ae5beccf20f8a12d6a55'; //高德key
            //高德获取地理位置接口路径
         $url       = 'http://restapi.amap.com/v3/geocode/regeo?output=json&location='.$Longitude.','.$Latitude.'&key='.$gaode;
         $info      file_get_contents($url);
         $data      json_decode($info,true);
         return $this -> returnInfo("您的地址为:".$data['regeocode']['formatted_address']);
        }
        
        //判断用户输入文本信息
        public function returnText()
        {
            //判断用户输入信息
            switch ($this -> Content) {
                case "测试1" : $this -> returnInfo("回复测试1"); break;
                case "测试2" : $this -> returnInfo("回复测试2"); break;
                default:$this -> returnRobot($this -> Content);break;
            }
        }

        public function returnRobot($content)
        {
         $url = 'http://www.tuling123.com/openapi/api';
         $data http_build_query(["key" => "6340fcf9b38e45279c09b8581d0760dd","info" => $content[0]]);
         $res = $this -> CURL($url,$data,false);
         $info json_decode($res,true);
         if($info['code'] == 100000)
         {
         $this -> returnInfo($info['text']);
         }
         else
         {
         $this -> returnInfo("机器人接口暂时无法使用");
         }
        }

        public function CURL($url,$data,$https true)
        {
         $ch = curl_init();
    // curl_setopt($ch,CURLOPT_SAFE_UPLOAD,false);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    // post数据
    curl_setopt($ch, CURLOPT_POST,1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,$https);
    // post的变量
    curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
    $output = curl_exec($ch);
    curl_close($ch);
    return $output;
        }
        
        //回复文本信息
        public function returnInfo($content)
        {
            //文本信息回复格式
            $str = "<xml>
                    <ToUserName><![CDATA[%s]]></ToUserName>
                    <FromUserName><![CDATA[%s]]></FromUserName>
                    <CreateTime>%s</CreateTime>
                    <MsgType><![CDATA[text]]></MsgType>
                    <Content><![CDATA[%s]]></Content>
                    </xml>";
            //将占位符替换成具体信息,并输出字符串
            echo $backInfo sprintf($str,$this -> FromUserName,$this -> ToUserName,time(),$content);
        }
        
        //获取数据
        public function receiveInfo()
        {
            $xmlInfo file_get_contents("php://input");
            $this -> xmlInfo         = simplexml_load_string($xmlInfo,'SimpleXMLElement',LIBXML_NOCDATA);
            $this -> FromUserName = $this -> xmlInfo -> FromUserName;
            $this -> ToUserName   = $this -> xmlInfo -> ToUserName;
            $this -> MsgType      = $this -> xmlInfo -> MsgType;
            $this -> Content      = (array)$this -> xmlInfo -> Content;
            $this -> Event        = $this -> xmlInfo -> Event;
        }
    }
    展开全文
  • 微信公众平台开发微信支付开发是子恒老师《微信公众平台开发》视频教程的第12部。详细讲解了用php进行微信支付的开发。内容包含获取支付密钥,微信公众号支付开发,扫码支付,微信刷卡支付,异步处理支付结果等等...
  • 微信公众平台开发微信用户开发管理是子恒老师《微信公众平台开发》视频教程的第7部。详细讲解了用php开发微信,对微信公众平台中的粉丝用户管理开发。内容包含微信公众平台用户分组,获取微信用户列表,查询用户...
  • 会员免费看,...微信h5支付开发是子恒老师《子恒说微信开发》视频教程的第17部。详细讲解了微信H5支付开发,内容包含开通H5支付,实现微信h5支付,订单查询,关闭订单等等。欢迎反馈,微信号:QQ68183131
  • 微信开发之素材管理是子恒老师《微信公众平台开发》视频教程的第三部。详细讲解了用php开发微信,对微信公众平台中的素材管理开发。内容包含微信临时素材,永久素材的上传,删除,获取素材的media_id等等。欢迎反馈...
  • 微信公众平台开发之公众号JSSDK开发是子恒老师《微信公众平台开发》视频教程的第9部。详细讲解了用php开发微信公众号,对微信公众平台中的JSSDK开发。内容包含用JSSDK获取网络状态,地理位置,分享到朋友圈,QQ,...
  • 微信公众平台开发之营销开发是子恒老师《微信公众平台开发》视频教程的第8部。详细讲解了用php开发微信,对微信公众平台中的营销功能开发。内容包含获取微信短网址,生成推广二维码,生成推广海报等等。欢迎反馈,...
  • 微信开发13-微信门店开发(PHP)

    万人学习 2018-10-22 21:38:08
    微信公众平台开发微信门店开发是子恒老师《微信公众平台开发》视频教程的第13部。详细讲解了用php进行微信门店的开发。内容包含新增微信门店,列表门店列表,获取和修改门店信息等等。欢迎反馈,微信号:QQ...
  • 微信群发多图文消息开发是子恒老师《子恒说微信开发》视频教程的第16部。详细讲解了用php开发微信群发图文消息。内容包含图文消息前端页面,一个页面插入多个百度UEditor,群发多图文,查询和删除图文消息等等。欢迎...
  • 微信开发核心基础

    万人学习 2018-10-22 21:38:05
    这套《微信开发核心基础》,用一个完整的案例,告诉你微信开发流程,错误调试,如何看开发文档,学习你就可以自己做些独立开发。这个教程使用PHP为开发工具,建议你先学习子恒老师的《微信公众号使用》。学习完后,...
  • PHP微信接口开发

    万人学习 2019-06-26 11:56:53
    微信公众平台是运营者通过公众号为微信用户提供资讯和服务的平台,而公众平台开发接口则是提供服务的基础,开发者在公众平台网站中创建公众号、获取接口权限后,可以通过阅读本接口文档来帮助开发...
  • 微信公众平台开发微信网页授权开发是子恒老师《微信公众平台开发》视频教程的第10部。详细讲解了用php进行微信网页授的开发。内容包含构造授权uri,实现网页授权,优化微信网页授,获取用户信息等等。
  • 微信支付开发——公众号支付

    万人学习 2019-06-24 13:33:58
    微信已经融入到人们的生活中,很多企业也在做跟微信相关的开发,但是网络上缺少微信开发相关的教程,特别是视频教程。课程的大特点是,实战 = 理论 + 演示 + 敲代码。这是一部中课程,需要有学习的开发者拥有微信...
  • 自己开发一套微信支付接口(SDK)是子恒老师《子恒说微信开发》视频教程的第15部。详细讲解了用php开发一套自己的微信支付接口。内容包含微信支付开发思路,基础类开发,微信支付接口应用,公众号发红包,企业付款等等...
1 2 3 4 5 ... 20
收藏数 40,622
精华内容 16,248
关键字:

php微信开发