PHPackages                             guoguo882010/rshd-sdk - 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. guoguo882010/rshd-sdk

ActiveLibrary

guoguo882010/rshd-sdk
=====================

2.18(7mo ago)0256MITPHPPHP &gt;=7.0.0

Since Nov 28Pushed 7mo ago1 watchersCompare

[ Source](https://github.com/guoguo882010/rshd-sdk)[ Packagist](https://packagist.org/packages/guoguo882010/rshd-sdk)[ RSS](/packages/guoguo882010-rshd-sdk/feed)WikiDiscussions V20250102 Synced 1mo ago

READMEChangelogDependenciesVersions (43)Used By (0)

说明文档

---

全局配置
====

[](#全局配置)

```
$config = [
    'rshd-project-name' => '项目名称',
    'rshd-project-key'  => '项目key',
];
```

阿里 sls 日志写入
===========

[](#阿里-sls-日志写入)

```
// 发送普通日志
$sls = new \RSHDSDK\SLS($config);
$sls->putData('数据数组','主题');

// 发送主题为 Request 的日志
$sls->putRequest('数据数组');

// 发送主题为 Exception 的日志，参数为 Exception 类型
$sls->putException(Exception $e);
```

阿里 oss 存储
=========

[](#阿里-oss-存储)

```
$oss = new \RSHDSDK\OSS($config);

// 上传文件到 oss
$oss->uploadFile('文件本地路径','文件存储到oss的路径');

//上传内容到 oss
$oss->uploadContent('内容字符串','文件存储到oss的路径');

// 判断文件是否存在
$oss->objectExist('oss中的路径');

// 获取文件内容
$oss->getObjectContent('oss中的路径');

// 获取有过期时间的 图片url
$oss->getPicSignUrl('oss中的路径','fixed 固定宽高缩放（默认值），lfit 等比缩放','图片宽','图片高');

// 获取有过期时间的文件 url
$oss->getSignUrl('oss中的路径');
```

短信发送
====

[](#短信发送)

```
//发送百度短信

$sms = new \RSHDSDK\SMS($config);
$sms->sendBaidu('电话号码','模版id','短信中变量数组');

//发送阿里短信
$sms = new \RSHDSDK\SMS($config);
$sms->sendAliyun('电话号码','模版id','短信中变量数组');

//发送esms100短信
$sms = new \RSHDSDK\SMS($config);
$sms->sendESMS100('电话号码','内容');
```

**成功返回结果**

```
[
    "status": 200,
    "message": "",
    "data": []
]
```

检测身份证
=====

[](#检测身份证)

**检测身份证号码和名字是否匹配**

```
$idcard = new \RSHDSDK\IdCard($config);
$idcard->check('身份证号码','姓名');
```

**返回结果**

```
[
    "status": 200,
    "message": "",
    "data":[
        "result": 1,
        "message": "核验一致",
        "birthday": "20000201",
        "sex": "男",
        "address": "四川省成都市"
    ]
]
```

电话号码归属地查询
=========

[](#电话号码归属地查询)

```
$tel = new \RSHDSDK\Tel($config);
$tel->getAddress('电话号码');
```

**返回成功结果**

```
[
    "status": 200,
    "message": "",
    "data": [
        "province": "四川",
        "areacode": "028",
        "postcode": "610000",
        "city": "成都",
        "isp": "电信"
    ]
]
```

微信支付
====

[](#微信支付)

调用支付
----

[](#调用支付)

```
$pay = new \RSHDSDK\WeChat($config)
$pay->miniPay('小程序appid', '商户订单号',
 '订单中文描述', '回调地址', '订单金额',
  '支付用户的openid');
```

**返回结果**

```
// 返回结果是一个数组
// data中的数据返回给前台小程序给wx.requestPayment方法使用
[
    "status": 200,
    "message": "",
    "data": [
        "appId": "xx",
        "timeStamp": "1735546754",
        "nonceStr": "xx",
        "package": "prepay_id=xx",
        "signType": "RSA",
        "paySign": "xxx"
    ]
]
```

通过微信订单号查询订单
-----------

[](#通过微信订单号查询订单)

```
$pay = new \RSHDSDK\WeChat($config);
$pay->miniGetOrderByWeChat('订单号');
```

**返回结果**

```
{
  "status": 200,
  "message": "",
  "data": {
    "amount": {
      "currency": "CNY",
      "payer_currency": "CNY",
      "payer_total": 1,
      "total": 1
    },
    "appid": "wxd8ba3fc250296e6a",
    "attach": "",
    "bank_type": "BOC_DEBIT",
    "mchid": "1681735611",
    "out_trade_no": "20250101152912100-wn6ufK",
    "payer": {
      "openid": "o3Bwh7WFmbtQycUCWrr_P5zy0ElY"
    },
    "promotion_detail": [],
    "success_time": "2025-01-01T17:03:11+08:00",
    "trade_state": "SUCCESS",
    "trade_state_desc": "支付成功",
    "trade_type": "JSAPI",
    "transaction_id": "4200002447202501018994887678"
  }
}
```

通过商户订单号查询订单
-----------

[](#通过商户订单号查询订单)

```
$pay = new \RSHDSDK\WeChat($config);
$pay->miniGetOrderByOut('订单号');
```

**返回结果**

```
{
    "status": 200,
    "message": "",
    "data": {
        "amount": {
            "currency": "CNY",
            "payer_currency": "CNY",
            "payer_total": 1,
            "total": 1
        },
        "appid": "wxd8ba3fc250296e6a",
        "attach": "",
        "bank_type": "BOC_DEBIT",
        "mchid": "1681735611",
        "out_trade_no": "20250101152912100-wn6ufK",
        "payer": {
            "openid": "o3Bwh7WFmbtQycUCWrr_P5zy0ElY"
        },
        "promotion_detail": [],
        "success_time": "2025-01-01T17:03:11+08:00",
        "trade_state": "SUCCESS",
        "trade_state_desc": "支付成功",
        "trade_type": "JSAPI",
        "transaction_id": "4200002447202501018994887678"
    }
}
```

解密微信支付、退款回调
-----------

[](#解密微信支付退款回调)

```
$pay = new \RSHDSDK\WeChat($config);
$pay->decodeCallBack($associated_data, $nonce, $ciphertext);
```

退款
--

[](#退款)

```
$pay = new \RSHDSDK\WeChat($config);

// 通过微信订单号退款
$pay->miniOrderRefundsByWeChat('微信订单号','商户退款单号','退款金额','订单原始金额','回调url');

// 通过商户订单号退款
$pay->miniOrderRefundsByOut('商户订单号','商户退款单号','退款金额','订单原始金额','回调url');
```

微信小程序
=====

[](#微信小程序)

```
$wehcat = new \RSHDSDK\WeChat($config);

//生成小程序二维码
$wehcat->miniUnlimitedQRCode('scene');
//生成小程序url，邮件、网页、微信内部都可以通过这个url打开小程序
$wehcat->miniGenerateUrlLink();
```

微信公众号
=====

[](#微信公众号)

```
$wehcat = new \RSHDSDK\WeChat($config);

//创建公众号自定义菜单
$wehcat->officialCreateMenu([]);
//删除清空自定义菜单
$wehcat->officialDeleteMenu();
//发送模版消息
$wehcat->officialTemplateMessageSend();
//发送客户消息
$wehcat->officialCustomSend($message);
//客户消息-发送文本消息
$wehcat->officialCustomSendText($to_user_openid, $content);
//客户消息-发送图片消息
$wehcat->officialCustomSendImage($to_user_openid, $media_id);
//客户消息-发送语音消息
$wehcat->officialCustomSendVoice($to_user_openid, $media_id);
//客户消息-发送图文消息（点击跳转到外链）
$wehcat->officialCustomSendNews($to_user_openid, $title, $description, $url, $picurl);
//客户消息-发送图文消息
$wehcat->officialCustomSendMPNews($to_user_openid, $media_id);
```

接收和返回XML消息类
-----------

[](#接收和返回xml消息类)

OfficialReceiveXMLMessage 类接收微信的的消息

OfficialSendXMLMessage 类获取需要返回给微信的xml字符串格式

这两个类不需要传送config配置，只需要传需要解析的xml字符串

```
//获取php请求的原始数据
$xml = file_get_contents("php://input");

//OfficialReceiveXMLMessage，其他方法查看类
$msg = new \RSHDSDK\WeChat\OfficialReceiveXMLMessage($xml);

$msg->isSubscribeEvent();//是否是订阅事件
$msg->isTextMessage();//是否是文本消息
$msg->getField('Content');//给定xml节点名字，获取这个节点的内容
$msg->getToUserName();//开发者微信号
$msg->getFromUserName();//客户openid

//OfficialSendXMLMessage，其他方法查看类

//返回文本消息xml格式字符串
\RSHDSDK\WeChat\OfficialSendXMLMessage::getTextXML('客户openid','开发者微信号','文本内容');
//返回图片消息xml格式字符串
\RSHDSDK\WeChat\OfficialSendXMLMessage::getImageXML('客户openid','开发者微信号','媒体id');
```

快递查询
====

[](#快递查询)

```
$e = new \RSHDSDK\Express($config);
$e->juMei('快递单号');
```

百度编辑器
=====

[](#百度编辑器)

更改百度编辑器的配置文件 ueditor.config.js 中的 serverUrl 为你项目的控制器方法

```
//百度编辑器，后端图片处理
$baidu = new \RSHDSDK\UEditor\UEditor($config);

//前台接收的 url 参数数组传给 action 方法
$baidu->action($this->request->param());

$baidu->getHtml('html字符串');
$baidu->setHtml('html字符串');
```

一些工具
====

[](#一些工具)

```
// 生成一个随机 32 位 md5 字符串
\RSHDSDK\Util\Str::generateUniqueMD5();

// 生成一个 16 位订单号
\RSHDSDK\Util\Str::generateOrderNO();

// 生成一个 20 位年月日的订单号
\RSHDSDK\Util\Str::generateDateOrderNumber();

// 获取文件后缀名
\RSHDSDK\Util\Str::getFileExtension('文件名.jpg');

//发送 http 请求
\RSHDSDK\Util\HTTP::sendRequest('url','POST或GET','请求头数组', '请求body数组','超时时间秒','是否是ssl请求');

\RSHDSDK\Util\HTTP::downloadURLToTempDir('url','文件名前缀');
```

更新日志
====

[](#更新日志)

20250125
--------

[](#20250125)

增加一些小程序，公众号方法

20250122
--------

[](#20250122)

增加 `HTTP::downloadURLToTempDir` 方法

###  Health Score

35

—

LowBetter than 79% of packages

Maintenance65

Regular maintenance activity

Popularity11

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 70.2% 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 ~7 days

Recently: every ~58 days

Total

42

Last Release

214d ago

Major Versions

1.0.21 → 2.02025-01-02

2.18 → 20250102.x-dev2025-10-10

### Community

Maintainers

![](https://www.gravatar.com/avatar/9b57028d0ae01c0a3e0a63cf818bff6b9d6ec8f8b92c506ac6a344d42e1dfea8?d=identicon)[gk](/maintainers/gk)

---

Top Contributors

[![gwf2023](https://avatars.githubusercontent.com/u/123916126?v=4)](https://github.com/gwf2023 "gwf2023 (33 commits)")[![guoguo882010](https://avatars.githubusercontent.com/u/3445260?v=4)](https://github.com/guoguo882010 "guoguo882010 (14 commits)")

### Embed Badge

![Health badge](/badges/guoguo882010-rshd-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/guoguo882010-rshd-sdk/health.svg)](https://phpackages.com/packages/guoguo882010-rshd-sdk)
```

PHPackages © 2026

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