微信开发SDK(含支付),支持Composer规范
在这里,我推荐大家使用composer来管理你的SDK,尤其是接口易变类的API库。
这个SDK已经发布在composer,可以使用composer来管理,当然也就非常容易集成到thinkphp5之上了。
作者推荐
在这里,我推荐大家使用composer来管理你的SDK,尤其是接口易变类的API库。
这个SDK已经发布在composer,可以使用composer来管理,当然也就非常容易集成到thinkphp5之上了。
微信或者其它移动端开发,这里推荐一个基于jQuery的SUI前端框架 http://sui.ctolog.com
SDK项目相关地址
GITHUB源码地址:https://github.com/zoujingli/wechat-php-sdk
OSChina源码地址:http://git.oschina.net/zoujingli/wechat-php-sdk
Composer包名称:zoujingli/wechat-php-sdk
在线文档地址:http://www.kancloud.cn/zoujingli/wechat-php-sdk
SDK的特别说明
此SDK运行最底要求PHP版本5.3.3, 建议在PHP7运行以获取最佳性能。
微信的部分接口需要缓存数据在本地,因此对目录需要有写权限。
我们鼓励大家使用composer来管理您的第三方库,方便后期更新操作(尤其是接口类)。
近期access_token经常无故失效,SDK加入失败状态检测,重新获取access_token并返回结果.
此SDK已经历经数个线上项目验证及考验,可靠性与稳定性极高,欢迎fork此项目。
关于微信支付
微信支付主要可分为两种,一种需要证书,另一种不需要证书。
公众号收钱:微信页面支付、微信扫码支付(不需要证书)
公众号付钱:微信订单退款、企业打款、微信红包(需要证书)
当然,这个SDK是完全支持的,看下SDK配置所需参数就明白了。^_^$options = [<br>
'token' => '', //填写你设定的token<br>
'appid' => '', //填写高级调用功能的app id, 请在微信开发模式后台查询<br>
'appsecret' => '', //填写高级调用功能的密钥<br>
'encodingaeskey' => '', //填写加密用的EncodingAESKey(可选,传输加密时必需)<br>
'mch_id' => '', //微信支付,商户ID(可选)<br>
'partnerkey' => '', //微信支付,密钥(可选)<br>
'ssl_cer' => '', //微信支付,双向证书(可选,操作退款或打款时必需)<br>
'ssl_key' => '' //微信支付,双向证书(可选,操作退款或打款时必需)<br>
'cachepath' => '', //设置SDK缓存目录(可选,默认在Wechat/Cache,需写权限)<br>
];
基于ThinkPHP5的扫码支付DEMO
DEMO体验地址:http://pay.test.ctolog.com/public/index.php
DEMO源码下载:http://pay.test.ctolog.com/master.zip
DEMO源码分析:http://www.kancloud.cn/zoujingli/wechat-php-sdk/213700
http://www.kancloud.cn/zoujingli/wechat-php-sdk/219111
包含的微信支付接口(详细内容请阅读文档)
生成微信预支付ID(通用)
发起微信扫码NATIVE支付
发起微信网页JSAPI支付
微信支付订单关闭操作
微信支付订单操作退款
微信支付订单详情查询
微信支付订单操作退款状态查询
获取微信支付对账单
微信公众号给粉丝发送现金红包
微信现金红包状态查询
微信公众号使用企业打款给个人
微信企业打款状态查询
关于微信跨号支付
微信跨号支付,主要问题在于支付公众号与授权公众号的openid不一致,会导致后面产生一些问题。
比如:企业打款、微信红包、微信退款,都需要使用粉丝的openid,那么这些就有些麻烦,当然微信退款还是有可能的,在支付通知里会有一个openid。
对于微信页面支付,主要涉及支付安全配置,需要到支付公众号平台时配置,而扫码支付就简单多了,几乎不用什么特殊处理!
SDK 封装对接及功能
接入验证 (初级权限)
自动回复(文本、图片、语音、视频、音乐、图文) (初级权限)
菜单操作(查询、创建、删除) (菜单权限)
客服消息(文本、图片、语音、视频、音乐、图文) (认证权限)
二维码(创建临时、永久二维码,获取二维码URL) (服务号、认证权限)
长链接转短链接接口 (服务号、认证权限)
标签操作(查询、创建、修改、移动用户到标签) (认证权限)
网页授权(基本授权,用户信息授权) (服务号、认证权限)
用户信息(查询用户基本信息、获取关注者列表) (认证权限)
多客服功能(客服管理、获取客服记录、客服会话管理) (认证权限)
媒体文件(上传、获取) (认证权限)
高级群发 (认证权限)
模板消息(设置所属行业、添加模板、发送模板消息) (服务号、认证权限)
卡券管理(创建、修改、删除、发放、门店管理等) (认证权限)
语义理解 (服务号、认证权限)
获取微信服务器IP列表 (初级权限)
微信JSAPI授权(获取ticket、获取签名) (初级权限)
数据统计(用户、图文、消息、接口分析数据) (认证权限)
微信支付(网页支付、扫码支付、交易退款、给粉丝打款)(认证服务号并开通支付)
接口权限备注
初级权限:基本权限,任何正常的公众号都有此权限
菜单权限:正常的服务号、认证后的订阅号拥有此权限
认证权限:分为订阅号、服务号认证,如前缀服务号则仅认证的服务号有此权限,否则为认证后的订阅号、服务号都有此权限
支付权限:仅认证后的服务号可以申请此权限

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Découvrez la programmation Python avec des exemples de code d'introduction. Python est un langage de programmation facile à apprendre mais puissant. Pour les débutants, il est très important de comprendre les exemples de code d’introduction à la programmation Python. Cet article vous fournira quelques exemples de code concrets pour vous aider à démarrer rapidement. Imprimer HelloWorldprint("HelloWorld") Il s'agit de l'exemple de code le plus simple en Python. La fonction print() est utilisée pour afficher le contenu spécifié

Les variables PHP stockent les valeurs pendant l'exécution du programme et sont cruciales pour créer des applications WEB dynamiques et interactives. Cet article examine en profondeur les variables PHP et les montre en action avec 10 exemples réels. 1. Stocker l'entrée de l'utilisateur $username=$_POST["username"];$passWord=$_POST["password"]; Cet exemple extrait le nom d'utilisateur et le mot de passe de la soumission du formulaire et les stocke dans des variables pour un traitement ultérieur. 2. Définissez la valeur de configuration $database_host="localhost";$database_username="username";$database_pa

"Exemples de programmation en langage Go : exemples de code dans le développement Web" Avec le développement rapide d'Internet, le développement Web est devenu un élément indispensable dans diverses industries. En tant que langage de programmation doté de fonctions puissantes et de performances supérieures, le langage Go est de plus en plus privilégié par les développeurs en développement Web. Cet article expliquera comment utiliser le langage Go pour le développement Web à travers des exemples de code spécifiques, afin que les lecteurs puissent mieux comprendre et utiliser le langage Go pour créer leurs propres applications Web. 1. Serveur HTTP simple Commençons par un

L'exemple de code le plus simple du tri à bulles Java est un algorithme de tri courant. Son idée de base est d'ajuster progressivement la séquence à trier en une séquence ordonnée grâce à la comparaison et à l'échange d'éléments adjacents. Voici un exemple de code Java simple qui montre comment implémenter le tri à bulles : publicclassBubbleSort{publicstaticvoidbubbleSort(int[]arr){int

Titre : Du débutant à la maîtrise : implémentation du code des structures de données couramment utilisées dans le langage Go. Les structures de données jouent un rôle essentiel dans la programmation et constituent la base de la programmation. Dans le langage Go, il existe de nombreuses structures de données couramment utilisées, et maîtriser la mise en œuvre de ces structures de données est crucial pour devenir un bon programmeur. Cet article présentera les structures de données couramment utilisées dans le langage Go et donnera des exemples de code correspondants pour aider les lecteurs à démarrer et à maîtriser ces structures de données. 1. Array Array est une structure de données de base, qui est un groupe du même type.

Guide d'interconnexion Huawei Cloud Edge Computing : exemples de code Java pour implémenter rapidement des interfaces Avec le développement rapide de la technologie IoT et l'essor de l'informatique de pointe, de plus en plus d'entreprises commencent à s'intéresser à l'application de l'informatique de pointe. Huawei Cloud fournit des services d'informatique de pointe, offrant aux entreprises des ressources informatiques hautement fiables et un environnement de développement pratique, facilitant ainsi la mise en œuvre des applications d'informatique de pointe. Cet article explique comment implémenter rapidement l'interface informatique de pointe Huawei Cloud via le code Java. Tout d’abord, nous devons préparer l’environnement de développement. Assurez-vous que le kit de développement Java est installé (

Comment utiliser PHP pour écrire le code de la fonction de gestion des stocks dans le système de gestion des stocks La gestion des stocks est un élément indispensable dans de nombreuses entreprises. Pour les entreprises disposant de plusieurs entrepôts, la fonction de gestion des stocks est particulièrement importante. En gérant et en suivant correctement les stocks, les entreprises peuvent répartir les stocks entre différents entrepôts, optimiser les coûts d'exploitation et améliorer l'efficacité de la collaboration. Cet article explique comment utiliser PHP pour écrire du code pour les fonctions de gestion d'entrepôt et vous fournit des exemples de code pertinents. 1. Établissez la base de données avant de commencer à écrire le code de la fonction de gestion des entrepôts de stocks.

Guide de rédaction de code et exemples de la méthode de tri par sélection Java Le tri par sélection est un algorithme de tri simple et intuitif. L'idée est de sélectionner à chaque fois l'élément le plus petit (ou le plus grand) parmi les éléments non triés et de l'échanger jusqu'à ce que tous les éléments soient triés. Cet article fournira un guide d'écriture de code pour le tri des sélections et joindra un exemple de code Java spécifique. Principe de l'algorithme Le principe de base du tri par sélection est de diviser le tableau à trier en deux parties, triée et non triée. A chaque fois, le plus petit (ou le plus grand) élément est sélectionné dans la partie non triée et placé à la fin de la partie triée. Répétez ce qui précède
