PHPackages                             misszero/passportsdkphp - 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. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. misszero/passportsdkphp

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

misszero/passportsdkphp
=======================

1.0.2(10y ago)017PHP

Since Feb 18Pushed 10y ago1 watchersCompare

[ Source](https://github.com/misszero/passportsdkphp)[ Packagist](https://packagist.org/packages/misszero/passportsdkphp)[ RSS](/packages/misszero-passportsdkphp/feed)WikiDiscussions master Synced 4w ago

READMEChangelog (2)DependenciesVersions (4)Used By (0)

\#稻米开放平台#
---------

[](#稻米开放平台)

本节对Passport开放平台和SDK进行讲解。

**概念**
------

[](#概念)

- **稻米开放平台账号**

    拥有该账号才能将站点接入到Passport中，一个账号可以同时接入多个站点。
- **AppKey**

    申请了稻米开放平台账号之后会获得一个AppKey，AppKey和开放平台账号的唯一标识符，利用AppKey才可以接入稻米Passport。
- **OpenID**

    当站点用户通过Passport登陆到时，Passport会生成一个用户对应的OpenID，开发者通过这个OpenID跟自己站点的用户系统对接，对接入站点来说，OpenID代表Passport提供的站点用户的唯一标识符。
- **同步回调页**

    当完成Passport操作之后，Passport会返回用户预设的一个页面，这个页面就叫做“同步回调页”。
- **异步回调页**

    也就是Passport SDK目录下的handler页面，该页面会在Passport执行完登陆或注销操作之后调用，开发人员在这里编写站点的用户信息保存、销毁操作。

**接入流程**
--------

[](#接入流程)

1. 申请稻米开放平台的的账号，获得AppKey。（详细见“二、如何申请开放平台账号”）
2. 将本SDK下所有文件放到接入站点的目录中，并在需要做登陆验证的页面中引用该SDK。建议编写一个独立的模块引用sdk，并在该页面中调用 IsLogin API判断是否登陆，如果没登陆则调用 ToLogin API跳转到登陆页面。
3. 设置配置文件中的各个参数。
4. 在异步处理页面（handler.php）中的OnLogin和OnLogout函数中编写登陆和注销时需要处理的内容，一般是设置Session。

**如何申请开放平台账号**
--------------

[](#如何申请开放平台账号)

1. 在oauth表中填入接入用户的名称和AppKey。
2. 在oauth\_website表中填入该用户接入的所有站点信息，如果有多个站点则有多条记录，每个站点都需要填入该站点的域名、默认同步回调页、API路径。

**配置文件**
--------

[](#配置文件)

开发接口目录下的config.php为配置文件，所有配置信息都包含在$riceappsdk\_configs数组中。

- **appkey**

    填写你申请的稻米开放平台账号的Appkey。
- **passportdomain**

    Passport服务的地址，不需要修改。
- **client\_type**

    接入站点的适配的客户端设备类型，该类型会影响Passport界面的显示样式。

    ```
      0 - 自适应设备类型
      1 - PC端
      2 - 移动端

    ```
- **access\_mode**

    接入站点的接入模式。

    ```
      1 - 内部接入模式
      2 - 外部接入模式

    ```

    使用内部接入模式时，接入站点的必须与Passport同处在一个顶级域，多个内部接入站点之间可以共享登陆状态，也就是说当你在站点A.RICE.EC登陆过之后，进入站点B.RICE.EC时不需要再登陆。 使用外部接入模式时，接入站点不需要与Passport处在同一个等级域，站点与站点之间不共享登陆状态，也就是说当你在站点C.WAIBU1.COM登陆过之后，进入站点D.WAIBU2.COM仍然需要再登陆。
- **weixin\_oauth**

    微信用户授权文件的路径。
- **weixin\_appid**

    微信公众号的应用ID。
- **weixin\_secret**

    微信公众号的用用秘钥。
- **rootdomain**

    接入站点的根域。
- **adduserbyweixin\_unlogin**

    开启在未登陆的情况下将当前微信账号自动绑定到Passprot的功能。

    ```
      0 - 未开启（默认）
      1 - 开启

    ```
- **sitename**

    子程序名。当一个域名下面有多个子程序时，需要填写该参数，参数内容与站点授权配置的子程序名要一致。默认为空。

\#常用API介绍#
----------

[](#常用api介绍)

**IsLogin**
-----------

[](#islogin)

- **描述**

    判断当前是否已经登陆。
- **参数**

    ```
      无

    ```
- **返回值**

    ```
      true - 已登录
      false - 未登陆

    ```

**GetOpenID**
-------------

[](#getopenid)

- **描述**

    获取当前登陆用户的OpenID
- **参数表**

    ```
      无

    ```
- **返回值**

    ```
      已经登陆则返回当登陆用户的OpenID，未登陆则返回空字符串。

    ```

**GetUserInfo**
---------------

[](#getuserinfo)

- **描述**

    获取当前登陆用户的信息
- **参数**

    ```
      openid - 登陆用户的OpenID

    ```
- **返回值**

    若为登陆状态则返回登陆用户的信息，否则返回null。

    ```
      StoreID - 商户ID
      RoleType - 角色类别 1-普通用户 2-商户用户
      UserID - 用户ID
      UserName - 用户名称
      NickName - 用户昵称
      Phone - 用户手机号
      OpenID - 用户的OpenID

    ```

**ToLogin**
-----------

[](#tologin)

- **描述**

    跳转到登陆页面，登陆成功后会跳转回同步回调页。
- **参数**

    ```
      redirecturi - 同步回调页地址，只需要回调页面部分，不需要完整的地址。

    ```
- **返回值**

    ```
      无

    ```

**ToRegister**
--------------

[](#toregister)

- **描述**

    跳转到注册页面，注册成功后会跳转回同步回调页。
- **参数**

    ```
      redirecturi - 同步回调页地址，只需要回调页面部分，不需要完整的地址。

    ```
- **返回值**

    ```
      无

    ```

**Logout**
----------

[](#logout)

- **描述**

    注销用户登陆。
- **参数**

    ```
      无

    ```
- **返回值**

    ```
      无

    ```

**ChangePassword**
------------------

[](#changepassword)

- **描述**

    跳转到修改密码页面，修改成功会返回同步回调页，只有处于登陆状态时才能使用该功能。
- **参数**

    ```
      redirecturi - 同步回调页地址，只需要回调页面部分，不需要完整的地址。

    ```
- **返回值**

    ```
      无

    ```

**RebindPhone**
---------------

[](#rebindphone)

- **描述**

    跳转到重新绑定手机号页面，绑定成功会返回同步回调页，只有处于登陆状态时才能使用该功能。
- **参数**

    ```
      redirecturi - 同步回调页地址，只需要回调页面部分，不需要完整的地址。

    ```
- **返回值**

    ```
      无

    ```

**AddUser**
-----------

[](#adduser)

- **描述**

    通过手机号码生成一个新用户，并返回用户信息。
- **参数**

    ```
      phone - 手机号码

    ```
- **返回值**

    ```
      StoreID - 商户ID
      RoleType - 角色类别 1-普通用户 2-商户用户
      UserID - 用户ID
      UserName - 用户名称
      NickName - 用户昵称
      Phone - 用户手机号
      OpenID - 用户的OpenID

    ```

**Login**
---------

[](#login)

- **描述**

    直接登陆，不需要进入登陆页面，登陆成功后会返回同步回调页。
- **参数**

    ```
      redirecturi - 同步回调页地址，只需要回调页面部分，不需要完整的地址
      username - 用户名
      password - 密码

    ```
- **返回值**

    ```
      无

    ```

**GetStoreID**
--------------

[](#getstoreid)

- **描述**

    获取当前的商户ID。
- **参数**

    ```
      无

    ```
- **返回值**

    ```
      当前商户的ID，0代表整个平台。

    ```

**SetStoreID**
--------------

[](#setstoreid)

- **描述**

    修改当前的商户ID。
- **参数**

    ```
      storeid - 商户ID，0代表整个平台

    ```
- **返回值**

    ```
      无

    ```

**AuthorizeToUser**
-------------------

[](#authorizetouser)

- **描述**

    为用户授权。
- **参数**

    ```
      userid - 用户ID
      rolecode - 角色编码

    ```
- **返回值**

    ```
      1 - 授权成功
      0 - 授权失败

    ```

**CheckPermissions**
--------------------

[](#checkpermissions)

- **描述**

    检查用户是否拥有当前页面的访问权限。
- **参数**

    ```
      无

    ```
- **返回值**

    ```
      无

    ```

**CheckPermissionsByUrl**
-------------------------

[](#checkpermissionsbyurl)

- **描述**

    检查用户是否拥有指定服务的访问权限。
- **参数**

    ```
      serviceurl - 服务的唯一标识符

    ```
- **返回值**

    ```
      true - 有权限
      false - 没有权限

    ```

**GetStore**
------------

[](#getstore)

- **描述**

    获取当前的商家信息。
- **参数**

    ```
      无

    ```
- **返回值**

    ```
      StoreID - 商户ID
      StoreName - 商户名称
      ProviderID - 服务提供者ID
      ProviderName - 服务提供者名称
      TempletID - 模板ID
      TempletCode - 模板编码
      TempletName - 模板名称
      LayoutID - 布局ID
      LayoutCode - 布局编码
      LayoutName - 布局名称

    ```

**GetStoreServices**
--------------------

[](#getstoreservices)

- **描述**

    获取当前用户的后台权限列表。
- **参数**

    ```
      openid - Passport分配给当前用户的openid。

    ```
- **返回值**

    返回值为一个数组，没有权限的情况下返回null。数组中实体的格式为：

    ```
      ServiceID - 服务ID
      ServiceName - 服务名称
      ServiceUrl - 服务的唯一资源定位符

    ```

**BindPhone**
-------------

[](#bindphone)

- **描述**

    绑定手机号码到当前登陆的用户。
- **参数**

    ```
      mobile - 手机号码。

    ```
- **返回值**

    返回值为true代表绑定成功，如果绑定失败会返回错误信息。

###  Health Score

27

—

LowBetter than 47% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity65

Established project with proven stability

 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

Every ~0 days

Total

3

Last Release

3786d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/8231493?v=4)[misszero](/maintainers/misszero)[@misszero](https://github.com/misszero)

---

Top Contributors

[![misszero](https://avatars.githubusercontent.com/u/8231493?v=4)](https://github.com/misszero "misszero (3 commits)")

### Embed Badge

![Health badge](/badges/misszero-passportsdkphp/health.svg)

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

###  Alternatives

[kartik-v/yii2-password

Useful password strength validation utilities for Yii Framework 2.0

761.3M17](/packages/kartik-v-yii2-password)

PHPackages © 2026

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