abei1982 2018-02-27 07:18:06 14034次浏览 3条评论 12 6 0

本来想写一段特别煽情的话来描述这个扩展,后来想想还是把readme放上来吧,看这个最直观,若你喜欢,尽情使用,

为了更好的维护这个项目,避免多点分心。答疑和bug提交请在我的知识分享( 点击进入 )讨论页面提交,选择标签yii2-wx。

<p align="center">
    <a href="https://nai8.me/yii2wx">
        <img src="https://nai8.me/images/yii2-wx-logo.png" height="150" alt="yii2-wx Logo"/>
    </a>
</p>
<p align="center">
    一款服务于yii2的微信SDK(公众号、小程序、开放平台和企业微信)
</p>
<p align="center">
    <img class="latest_stable_version_img" src="https://poser.pugx.org/abei2017/yii2-wx/v/stable">
    <img class="total_img" src="https://poser.pugx.org/abei2017/yii2-wx/downloads">
    <img class="latest_unstable_version_img" src="https://poser.pugx.org/abei2017/yii2-wx/v/unstable">
    <img class="license_img" src="https://poser.pugx.org/abei2017/yii2-wx/license">
</p>

<hr/>

<p align="center">
    感谢下面伙伴的支持
</p>
<p align="center">
    <a href="https://nai8.me">
        <img src="https://nai8.me/images/logo.png" height="90" alt="https://nai8.me"/>
    </a>
</p>
<p align="center">
    <img src="https://nai8.me/images/qrcodes/xiaobao-qrcode.jpg" height="180" alt="北哥小报"/>
</p>
<p align="center">
    除了代码,还有诗和远方。扫码关注我的公众号。
</p>

文档

系统需求(Requirement)

  • PHP >= 5.4
  • Composer
  • openssl
  • fileinfo

安装(Installation)

$ composer require "abei2017/yii2-wx" -vvv

配置(set)

配置参数建议存放到yii2的配置文件中,例如基础版yii2可以如下配置

return [
    'wx'=>[
        //  公众号信息
        'mp'=>[
            //  账号基本信息
            'app_id'  => '', // 公众号的appid
            'secret'  => '', // 公众号的秘钥
            'token'   => '', // 接口的token
            'encodingAESKey'=>'',
            'safeMode'=>0,

            //  微信支付
            'payment'=>[
                'mch_id'        =>  '',// 商户ID
                'key'           =>  '',// 商户KEY
                'notify_url'    =>  '',// 支付通知地址
                'cert_path'     => '',// 证书
                'key_path'      => '',// 证书
            ],

            // web授权
            'oauth' => [
                'scopes'   => 'snsapi_userinfo',// 授权范围
                'callback' => '',// 授权回调
            ],
        ],

        //  小程序配置
        'mini'=>[
            //  基本配置
            'app_id'  => '', 
            'secret'  => '',
            //  微信支付
            'payment' => [
                'mch_id'        => '',
                'key'           => '',
            ],
        ]
    ]
];

对于配置,请不要修改数据的key值。

使用(use)

yii2-wx采用单一接口驱动功能的思路,比如下面的代码将生成一个微信带参数的二维码。

use abei2017\wx\Application;

$conf = Yii::$app->params['wx']['mp'];
$app = new Application(['conf'=>$conf]);

$qrcode = $app->driver('mp.qrcode');
$data = $qrcode->intTemp(3600,9527);// 生成一个数字类临时二维码,有效期为3600秒

功能实现

微信公众号

  • [x] 获取接口调用凭证
  • [x] 获取微信服务器IP地址
  • [x] 验证消息真实性
  • [x] 服务器接收实现
  • [x] 客户端响应相关接口
  • [x] 带参数的二维码
  • [x] 用户管理
  • [x] 素材管理
  • [x] 菜单管理
  • [x] 消息模板发送
  • [x] web授权机制
  • [x] JSSDK
  • [x] 微信支付(扫码支付/公众号浏览器支付)
  • [x] 企业付款到零钱包
  • [x] 现金红包

微信小程序

  • [x] 小程序码
  • [x] 小程序的微信支付
  • [x] 小程序模板

学习yii2-wx(learning yii2-wx)

北哥已将yii2-wx的配置和使用设计的简单易懂,因此通过文档和速查表你可以轻松的学会它,但是这也需要你之前对微信相关文档有所阅读。

如果你是一名yii2或微信接口开发的初学者,我在自己的知识分享设置了一套针对性的视频课程(点击查看),我想能让你零起步。

支持(Support)

更多请参考 https://nai8.me/yii2wx

开源协议(License)

MIT

觉得很赞
  • 评论于 2018-04-06 11:35 举报

    fecshop的微信支付还没有做,看你的扩展很不错,想咨询您几个问题

    1.您好,您这个扩展在很多项目中使用过了吗?

    2.如果我没有企业公众号,看微的支付没有沙盒环境,我在没有企业公众号的情况下如何做微信支付开发

    3.

    [x] 微信支付(扫码支付/公众号浏览器支付): 这d个我是否可以理解成面向pc端的扫码支付?

    [x] 企业付款到零钱包:这个我是否可以理解成在手机微信app内部打开的链接,然后使用微信app支付?

    [x] 现金红包:这个不是很清楚,这个应该和支付没啥关系哈,这个的应用场景一般是什么?

    4.使用手机微信app付款,是否必须在微信app内部打开的链接有效?对于手机浏览器打开的网页,是否可以使用微信app支付?
    (我这个问题问的是面向大众是否可以,而非和微信合作的大厂家)

    由于对微信开发不熟悉,咨询您一下,多谢。

    2 条回复
    评论于 2018-04-06 13:46 回复
    1. 你好,这是刚发布的一个扩展,在我自己的网站和几个学员项目中使用了,普通需求没啥问题,不过如果集成到产品中,我认为过几个版本后可能更好。

    2. 可以结合微信支付 + 微信开发者工具看到效果,不过比较麻烦,推荐找个正式环境测试。

      • 扫码支付就是原生支付,多用于pc端。
      • 企业付款到零钱包不是你理解的,这个接口多用于提现,是实现共对私的一种途径。
      • 现金红包也是微信支付的一种,同样实现了小额度的共到私。并且支持普通红包和裂变红包,具有一定的营销功能。
    3. 一般公众号浏览器支付必须在微信内,微信支付平台提供了h5的接口,可以通过手机浏览器----微信----微信支付。不过h5的接口不是默认开通的,需要去申请。

    评论于 2018-04-06 18:52 回复

    微商城支付用您的那种呢?也就是在微信内部的商城支付,手机端

  • 评论于 2019-02-12 09:43 举报

    您好您的文档失效了,是否可以重新提供呢?

  • 评论于 2019-10-10 09:32 举报

    能不能集成一下 内容安全的接口啊

    1 条回复
    评论于 2019-10-10 09:32 回复

    我不会加==

您需要登录后才可以评论。登录 | 立即注册