# php-tool-youhujun
| 项目名称 | 托管平台 | 项目地址 |
|---|---|---|
| php-tool-youhujun | GitCode | https://gitcode.com/youhujun/php-tool-youhujun (opens new window) |
| php-tool-youhujun | Gitee | https://gitee.com/youhujun/php-tool-youhujun (opens new window) |
| php-tool-youhujun | GitHub | https://github.com/youhujun/php-tool-youhujun (opens new window) |
# 文档地址
TIP
因为文档内容较多,所以放置到技术博客的专题中
# 项目简介
php-tool-youhujun (opens new window) 是为了提高php开发效率,无需关乎基础通用功能的实现,将精力聚焦于业务逻辑的开发而催生的.
# 项目功能
本工具包提供了丰富的 PHP 开发常用功能,涵盖以下模块:
# 📊 数据处理
- Excel: Excel 文件的导入和导出功能
# 📅 日期时间
- 日历: 公历与农历互转
# 🏷️ 二维码
- 二维码生成: 支持多种格式的二维码生成
# 📨 消息服务
- 腾讯云短信: 短信发送功能
# 🗺️ 地图服务
- 腾讯地图: 地图相关功能
# 🔐 微信生态
- 微信小程序: 微信小程序登录
- 微信公众号: 微信公众号网页授权
- 微信支付: 微信 JSAPI 支付、支付回调解密
# 🎵 抖音生态
- 抖音登录: 抖音小程序和小游戏登录
# 🔒 加密解密
- AES 加密: AES 加密解密功能
- RSA 加密: RSA 公钥加密私钥解密功能
# ☁️ 云存储
- 七牛云存储: 文件上传、删除、获取文件信息等
# 安装
composer require youhujun/php-tool-youhujun
1
# 环境要求
- PHP >= 8.0.2
- 扩展: openssl, json, gd
# 使用
# Excel 导入导出
use YouHuJun\Tool\App\Facade\V1\Excel\ExcelFacade;
// 导出
ExcelFacade::exportExcelData($columns, $data, $title, $saveDirectory);
// 导入
ExcelFacade::initReadExcel($this->tempFile);
ExcelFacade::setWorkSheet(0);
$result = ExcelFacade::getDataByRow();
// 移除表头后再进行断言,这更符合真实业务场景
array_shift($result);
//数据库操作
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
# 日历转换
use YouHuJun\Tool\App\Facade\V1\Calendar\CalendarFacade;
// 农历转公历
$solarDate = CalendarFacade::lunarToSolar($lunarYear, $lunarMonth, $lunarDay, $isLeapMonth);
// 公历转农历
$lunarDate = CalendarFacade::solarToLunar($solarYear, $solarMonth, $solarDay);
1
2
3
4
5
6
7
2
3
4
5
6
7
# 二维码生成
use YouHuJun\Tool\App\Facade\V1\Qrcode\QrcodeFacade;
// 生成二维码
$qrCode = QrcodeFacade::generate('https://example.com', $size = 300);
$qrCode->save('qrcode.png');
1
2
3
4
5
2
3
4
5
# 微信小程序登录
use YouHuJun\Tool\App\Facade\V1\Wechat\MiniProgram\WechatMiniProgramFacade;
// 获取 OpenID
$result = WechatMiniProgramFacade::getOpenIdByCode($code, $appid, $appSecret);
1
2
3
4
2
3
4
# 抖音登录
use YouHuJun\Tool\App\Facade\V1\DouYin\Login\DouYinLoginFacade;
// 抖音小程序登录
$result = DouYinLoginFacade::getOpenIdByCodeWithMiniProgram($code, $anonymousCode, $appid, $appSecret);
// 抖音小游戏登录
$result = DouYinLoginFacade::getOpenIdByCodeWithMiniGame($code, $anonymousCode, $appid, $appSecret);
1
2
3
4
5
6
7
2
3
4
5
6
7
# AES 加密解密
use YouHuJun\Tool\App\Facade\V1\Utils\Secret\AESFacade;
// 加密
$encrypted = AESFacade::encrypt('hello world', 'your-key');
// 解密
$decrypted = AESFacade::decrypt($encrypted, 'your-key');
1
2
3
4
5
6
7
2
3
4
5
6
7
# RSA 加密解密
use YouHuJun\Tool\App\Facade\V1\Utils\Secret\RSAFacade;
// 公钥加密
$encrypted = RSAFacade::encrypt('hello world', $publicKey);
// 私钥解密
$decrypted = RSAFacade::decrypt($encrypted, $privateKey);
1
2
3
4
5
6
7
2
3
4
5
6
7
# 七牛云存储
use YouHuJun\Tool\App\Facade\V1\Store\QiNiuFacade;
// 初始化配置
QiNiuFacade::init($accessKey, $secretKey, $cdnUrl, $bucket);
// 上传文件
$result = QiNiuFacade::uploadFile($filePath, $savePath);
// 获取私有文件链接
$url = QiNiuFacade::getPrivateFileUrl($savePath);
// 获取公有文件链接
$url = QiNiuFacade::getPublicFileUrl($savePath);
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
- 导出
use YouHuJun\Tool\App\Facade\V1\Excel\ExcelFacade;
ExcelFacade::exportExcelData($columns, $data, $title, $saveDirectory);
1
2
3
2
3
- 导入
use YouHuJun\Tool\App\Facade\V1\Excel\ExcelFacade;
ExcelFacade::initReadExcel($this->tempFile);
ExcelFacade::setWorkSheet(0);
$result = ExcelFacade::getDataByRow();
// 移除表头后再进行断言,这更符合真实业务场景
array_shift($result);
//数据库操作
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
更多文档请查看文档地址 (opens new window)
# 测试
# 安装测试依赖
composer install --dev
1
# 运行测试
- 单独测试 Excel
composer test --testsuite Excel
1
- 单独测试 Calendar
composer test --testsuite Calendar
1
- 全部测试
composer test
1
← 功能展示二 apipost接口文档 →