phalapi/wechatmini

PhalApi 2.x 微信小程序扩展

dev-master 2019-01-13 07:24 UTC

This package is not auto-updated.

Last update: 2024-07-26 20:47:04 UTC


README

PhalApi 2.x 微信小程序扩展

安装和配置

修改项目下的composer.json文件,并添加:

    "phalapi/wechatmini":"dev-master"

然后执行composer update

安装成功后,添加以下配置到./config/app.php文件:

'Wechatmini' => array(
        'appid' => '你的appid',
        'secret_key' => '微信小程序后台生成的secret_key,请勿随便修改',
        'mch_id' => '商户号',//不用支付可以不用配置
        'mch_key' => '支付秘钥',//不用支付可以不用配置
    ),

注册

在/path/to/phalapi/config/di.php文件中,注册:

$di->wechatmini = function() {
        return new \PhalApi\Wechatmini\Lite();
};

说明

获取access_token和文本检测需要用到access_token,所以需要给public文件夹给予777权限。

使用

获取openid

\PhalApi\DI()->wechatmini->getOpenid('小程序返回请求的code');

返回结果:

获取Unionid

\PhalApi\DI()->wechatmini->getUnionid('小程序返回请求的code','会话密钥', '解码内容');

返回结果:

获取access_token

说明:直接获取access_token,不加任何处理,有次数限制,用此方法获取后可能会导致已经获取且在使用的token失效

\PhalApi\DI()->wechatmini->getToken();

返回结果:

获取access_token并且保存服务器

说明:获取access_token,由于微信对access_token获取次数有限制,此方法将token存服务器,需要时直接取服务器token,过期自动更新token

\PhalApi\DI()->wechatmini->getAccessToken();

返回结果:

文本违规检测

说明:检查一段文本是否含有违法违规内容。应用场景举例:用户个人资料违规文字检测;媒体新闻类用户发表文章,评论内容检测;游戏类用户编辑上传的素材(如答题类小游戏用户上传的问题及答案)检测等。频率限制:单个 appId 调用上限为 2000 次/分钟,1,000,000 次/天

\PhalApi\DI()->wechatmini->msgSecCheck('待检测内容');

返回结果:

发送模板消息

说明:基于微信的通知渠道,我们为开发者提供了可以高效触达用户的模板消息能力,以便实现服务的闭环并提供更佳的体验。

\PhalApi\DI()->wechatmini->sendWeAppMessage('touser', 'formid', 'template_id', 'page', 'emphasis_keyword', 'data');

参数说明:

示例:

$openid = '接收者(用户)的 openid';
$form_id = "小程序端获取的formid",
$template_id = 'eb_azL3MW76Hn_U9yu6GZOf5Lm90AROUruI1OdECYUQ';
$page = 'pages/index/index';
$emphasis_keyword = 'keyword2.DATA';
$data = array(
    "keyword1" => array("value" => "我们已收到您的反馈意见,感谢您的使用", "color" => "#173177"),
    "keyword2" => array("value" => "感谢使用Phalapi", "color" => "#173177"));
$res = \PhalApi\DI()->wechatmini->sendWeAppMessage($openid, $formid, $template_id, $page,$emphasis_keyword, $data);
return $res;

返回结果:

错误码说明:

微信预支付

说明:商户在小程序中先调用该接口在微信支付服务后台生成预支付交易单,返回正确的预支付交易后调起支付。

\PhalApi\DI()->wechatmini->WxPay('付款者openid', '付款金额', '商品描述');

返回结果:

微信小程序数据解密

说明:小程序可以通过各种前端接口获取微信提供的开放数据。 考虑到开发者服务器也需要获取这些开放数据,微信会对这些数据做签名和加密处理。 开发者后台拿到开放数据后可以对数据进行校验签名和解密,来保证数据不被篡改。

\PhalApi\DI()->wechatmini->WXBizDataCrypt('sessionKey', 'encryptedData', 'iv');

参数说明:

返回结果:

错误码说明: