第一步:应用composer装置EasyWeChat
https://www.easywechat.com/docs/3.x/installation
第二步:在后面咱们曾经讲过,初始化 SDK 的时候办法就是创立一个

 EasyWeChat\Foundation\Application 实例:use EasyWeChat\Foundation\Application;$options = [   // ...];$app = new Application($options);/*** 如果想要在Application实例化实现之后, 批改某一个options的值,* 比方服务商+子商户领取回调场景, 所有子商户订单领取信息都是通过同一个服务商的$option 配置进来的,* 当oauth在微信端验证实现之后, 能够通过动静设置merchant_id来辨别具体是哪个子商户*/$app['config']->set('oauth.callback','wechat/oauthcallback/'. $sub_merchant_id->id);

那么配置的具体选项有哪些,上面是一个残缺的列表:

<?phpreturn [    /**     * 账号根本信息,请从微信公众平台/开放平台获取     */    'app_id'  => 'your-app-id',         // AppID    'secret'  => 'your-app-secret',     // AppSecret    'token'   => 'your-token',          // Token    'aes_key' => '',                    // EncodingAESKey,平安模式与兼容模式下请肯定要填写!!!    /**     * OAuth 配置     *     * scopes:公众平台(snsapi_userinfo / snsapi_base),开放平台:snsapi_login     * callback:OAuth受权实现后的回调页地址     */    'oauth' => [        'scopes'   => ['snsapi_userinfo'],        'callback' => '/examples/oauth_callback.php',    ],    /**     * 微信领取     */    'payment' => [        'merchant_id'        => 'your-mch-id',        'key'                => 'key-for-signature',        'cert_path'          => 'path/to/your/cert.pem', // XXX: 绝对路径!!!!        'key_path'           => 'path/to/your/key',      // XXX: 绝对路径!!!!    ],     * 更多请参考: http://docs.guzzlephp.org/en/latest/request-options.html     */    'guzzle' => [        'timeout' => 3.0, // 超时工夫(秒)    ],];

第三步:应用EasyWeChat实现提现到零钱性能(企业付款到零钱)
你在浏览本文之前确认你曾经仔细阅读了:https://pay.weixin.qq.com/wik...。
与其余领取接口一样,企业领取接口也须要配置如下参数,须要特地留神的是,企业领取相干的全副接口 都须要应用 SSL 证书,因而 cert_path 以及 cert_key 必须正确配置。

<?phpuse EasyWeChat\Foundation\Application;$options = [    'app_id' => 'your-app-id',    // payment    'payment' => [        'merchant_id'        => 'your-mch-id',        'key'                => 'key-for-signature',        'cert_path'          => 'path/to/your/cert.pem',        'key_path'           => 'path/to/your/key',        // ...    ],];$app = new Application($options);$merchantPay = $app->merchant_pay;

企业付款

企业付款应用的余额跟微信领取的收款并非同一账户,请留神充值。

<?php$merchantPayData = [        'partner_trade_no' => str_random(16), //随机字符串作为订单号,跟红包和领取一个概念。        'openid' => $openid, //收款人的openid        'check_name' => 'NO_CHECK',  //文档中有三种校验实名的办法 NO_CHECK OPTION_CHECK FORCE_CHECK        're_user_name'=>'张三',     //OPTION_CHECK FORCE_CHECK 校验实名的时候必须提交        'amount' => 100,  //单位为分        'desc' => '企业付款',        'spbill_create_ip' => '192.168.0.1',  //发动交易的IP地址    ];$result = $merchantPay->send($merchantPayData);

查问付款信息
用于商户对已发放的企业领取进行查问企业领取的具体信息。

$partnerTradeNo = "商户零碎外部的订单号(partner_trade_no)";
$merchantPay->query($partnerTradeNo);
常识付费零碎的微信性能根本类extend\service\WechatService;依照文档阐明咱们在WechatService类中增加企业付款的接口,接口名称为merchantPayService,若是存在就不须要增加;

/** * 企业付款 * @return \EasyWeChat\Material\Material */public static function merchantPayService(){    return self::application()->merchant_pay;}

那么咱们所须要的就是调用merchantPayService办法里的send办法,并且传入咱们转账的参数即可。
咱们须要把性能加到提现审核通过之后执行。admin\model\user\UserExtract;找到这个类中的changeSuccess办法,这个办法是审核通过后的相干操作。
(1).先引入WechatService;

use service\WechatService;

(2).changeSuccess办法里加上面代码,并且依据最初的返回判断企业付款是否胜利。

$payData = [    'partner_trade_no' => str_random(16), //随机字符串作为订单号,跟红包和领取一个概念。    'openid' => $openid, //收款人的openid    'check_name' => 'NO_CHECK',  //文档中有三种校验实名的办法 NO_CHECK OPTION_CHECK FORCE_CHECK    're_user_name'=>'张三',     //OPTION_CHECK FORCE_CHECK 校验实名的时候必须提交    'amount' => 100,  //单位为分    'desc' => '企业付款',    'spbill_create_ip' => '192.168.0.1',  //发动交易的IP地址];$result=WechatService::merchantPayService()->send($payData);

最初
如果你感觉这篇文章对你有点用的话,麻烦请给咱们的开源我的项目点点star:http://github.crmeb.net/u/defu不胜感激 !

收费获取源码地址:http://www.crmeb.com

PHP学习手册:https://doc.crmeb.com

技术交换论坛:https://q.crmeb.com