PHPackages                             jackliu/openplatform - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. jackliu/openplatform

ActiveLibrary[API Development](/categories/api)

jackliu/openplatform
====================

the baidu miniprogram openplatform SDK

v0.1.1-alpha(6y ago)09MITPHPPHP &gt;=5.6.0CI failing

Since Jan 6Pushed 6y ago1 watchersCompare

[ Source](https://github.com/liuming9157/OpenBaidu)[ Packagist](https://packagist.org/packages/jackliu/openplatform)[ RSS](/packages/jackliu-openplatform/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (2)Dependencies (2)Versions (2)Used By (0)

### 百度小程序第三方平台SDK

[](#百度小程序第三方平台sdk)

#### 注意：本项目仍在开发中，无法用于生产环境，欢迎共同开发

[](#注意本项目仍在开发中无法用于生产环境欢迎共同开发)

### 使用方法

[](#使用方法)

参照`exmaple\Index.php`中写法

### 项目结构

[](#项目结构)

初始的目录结构如下：

```
OpenBaidu
├─src           应用目录
│  ├─Application        核心类库
│  ├─library            模块目录
│  │  └─Miniapp         授权小程序
│  └─util               工具目录
│
├─example               示例目录（对外访问目录）
   └─index.php          示例写法

```

### 方法介绍

[](#方法介绍)

```
protected $config=[
    'encodingAesKey'=>'',//设置aesKey
	'client_id'=>'',//设置第三方平台secret
	'redirect_uri'=>'',//设置授权后回调URI
	'debug'=>true//生产模式时请设置为false,并且按照文档添加数据库
     ];

$app=new Application($this->config);
$app->serve();接收服务器推送时返回success，并缓存
$app->ticket();解密获取ticket
$app->tpToken();//获取第三方平台的AccessToken并缓存
$app->preAuthCode();获取预授权码
$app->jumpToAuth();//前往授权页；
$app->authCode();//获取授权码，一般在回调页调用
$app->refreshToken();//刷新授权小程序的AccessToken;
$app->mpToken();//获取授权小程序的AccessToken;存入数据库
$app->mpInfo();//获取授权小程序的信息

```

**注意**以上各方法根据自己需要调用。事实上，在实际开发中，真正需要开发者调用的方法只需要san个（参照例子写法）：
一是接收ticket并缓存,需调用`serve()`方法
二是用户点击授权按钮时，跳转到授权页，此时调用`jumpToAuthPage()`方法;
三是在授权回调页获取小程序aceess\_token并保存，此时在跳转回调页内调用`mpToken()`方法，
`注意：此方法返回的不是access_token，而是一个数组，该数组包含了access_token/refresh_token/expires_in`，建议存入数据库

### 对access\_token的处理

[](#对access_token的处理)

1. 开发者一定要注意，第三方平台有一个access\_token,授权小程序也有一个access\_token,这两个access\_token不一样，为了区分，代码中一般用tpToken表示第三方平台令牌，用mpToken表示小程序令牌。
2. tpToken有效期为1个月，mpToken有效期为1小时。tpToken本框架已经做了处理，开发者不需关注，建议开发者把mpToken令牌都存入数据库，每次调用时先从数据库查询，而不是从百度和微信服务器获取。
3. mpToken是否过期需要大家自行判断，如果过期使用refreshToken刷新
    以下是建议的数据表设计：

mp\_token数据表字段如下：

1. id int(10)
2. access\_token varchar(150)
3. refresh\_token varchar(150)
4. update\_time int(10)
5. expires \_in int(10)
6. type varchar(50) 可选值：'weixin','baidu','ali','douyin','QQ'
7. appid varchar(50)
8. app\_name varchar(100)
9. photo\_addr varchar(500)

### 授权后获取实例

[](#授权后获取实例)

`$miniapp=$this->app->miniapp($token)`

### 关于代码提交功能接口的使用说明

[](#关于代码提交功能接口的使用说明)

代码提交时，需要调用以下三个接口

1. 代码上传 `$mimiapp->uploadCode()`
    此接口需要用户填写三个数据，分别是
    `$ext_json`第三方配置信息
    `user_version`代码版本号
    `user_desc`代码描述
    还有一个字段由系统获取，为`$template_id`模板ID
2. 提交审核`$miniapp->submitAudit()`
    提交审核后需要等待一天左右，百度会推送审核结果。审核结果的获取，可以参考`https://smartprogram.baidu.com/docs/develop/third/apppage/#%E4%BB%A3%E7%A0%81%E5%AE%A1%E6%A0%B8%E7%8A%B6%E6%80%81%E6%8E%A8%E9%80%81`
3. 代码发布`$app->relaseCode()`
    **在获得授权后，提交代码前，就应该调用修改域名接口`$app->modifyDomain()`来修改小程序的业务域名**

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

2321d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/6c5ea7080a88595ffcb02e28ada45815833a89e0380da3683acefac7b484e91a?d=identicon)[liuming9157](/maintainers/liuming9157)

---

Top Contributors

[![liuming9157](https://avatars.githubusercontent.com/u/29487032?v=4)](https://github.com/liuming9157 "liuming9157 (32 commits)")

### Embed Badge

![Health badge](/badges/jackliu-openplatform/health.svg)

```
[![Health](https://phpackages.com/badges/jackliu-openplatform/health.svg)](https://phpackages.com/packages/jackliu-openplatform)
```

###  Alternatives

[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3731.2M42](/packages/tencentcloud-tencentcloud-sdk-php)[convertkit/convertkitapi

Kit PHP SDK for the Kit API

2167.1k1](/packages/convertkit-convertkitapi)[mapado/rest-client-sdk

Rest Client SDK for hydra API

1125.9k2](/packages/mapado-rest-client-sdk)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
