fxri / fxyin
风音框架:可被任意 PHP 框架无缝接入的辅助框架
v2.2.6
2026-11-06 11:38 UTC
Requires
- php: ^8.2
- ext-mbstring: *
- ext-openssl: *
- psr/log: ^1.1 || ^2.0 || ^3.0
- symfony/translation-contracts: ^3.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.64
- phpstan/phpstan: ^2.1
- phpstan/phpstan-deprecation-rules: ^2.0
- phpunit/phpunit: ^11.5.50 || ^12.5.8
Suggests
- ext-curl: 需要使用 URL 级 HTTP 入口 Http\HttpClient\Curl 时安装
- nyholm/psr7: 轻量 PSR-7 实现,配合 PSR-18 客户端使用
- psr/http-client: 需要以 PSR-18 客户端发起外部请求时安装
- psr/http-factory: 需要构造 PSR-7 请求与响应时安装
- psr/http-message: 需要 HTTP 消息对象时安装
- symfony/http-client: 可直接作为 PSR-18 客户端实现注入
- topthink/framework: 需要 ThinkPHP 容器适配与异常映射时安装
Provides
None
Conflicts
None
Replaces
None
README
风音框架
面向 PHP 8.2 的轻量开发辅助框架:可接入任意 PHP 项目,内置业务开发里高频出现的能力。
Fxyin 读作「风音」:Fx 取自「方弦」,yin 即「音」,取「轻、快」之意。
定位:不引入依赖注入容器,不接管路由、中间件与 MVC 基类。装配结果是一组不可变对象,业务代码按需取用;工具类均为纯静态,可直接调用。余下的判断留给宿主框架。
✨ 能力矩阵
| 能力 | 适用场景 | 入口 |
|---|---|---|
| 参数定义与整形 | 入口参数补默认值、定形状、按需挑选 | Fxri\Param\Definition |
| 字段与数据整理 | 生成 SQL 字段表达式、列表转树、差异比对 | Fxri\Data\Field |
| 链式条件构造 | 拼 SQL 片段与绑定值,执行交给调用方 | Fxri\Sql\WhereBuilder |
| 文本与时间 | 字符串处理、编解码、IP 转换、UUID | Fxri\Text\Str |
| 文件与路径 | 目录读写、路径归一、MIME 映射 | Fxri\File\Filesystem |
| 安全 | 摘要、对称与非对称加解密、一次性令牌 | Fxri\Security\Cipher |
| HTTP | 统一响应信封、请求上下文、Cookie、视图 | Fxri\Http\Envelope |
| 装配与配置 | 配置目录加载、日志、翻译器、框架适配 | Fxri\KernelBuilder |
🛠️ 命令行
仓库内执行 php fxyin <命令>;接入项目装好本包后用 php vendor/bin/fxyin <命令>。
| 命令 | 作用 |
|---|---|
skills |
安装 AI 技能入口薄壳,指向包内真源 |
upgrade |
1.x 升级体检:项目画像、旧 API 统计与基线校验 |
scan |
扫描数字码等禁用写法 |
package |
生成发布包(仅本仓开发期使用) |
parity |
对等审计(仅本仓开发期使用) |
help |
查看全部命令与单个命令用法 |
命令总览、退出码与接入方调用方式见命令行。
📚 文档
| 文档 | 适合谁 |
|---|---|
| 快速开始 | 第一次接触,想先跑起来 |
| 内核与装配 | 了解内核边界与装配方式 |
| 配置 | 配置目录、环境变量与翻译词条 |
| 参数 | 入参定义、合并与挑选 |
| 数据 | 字段表达式、树形结构与数据比对 |
| SQL | 链式条件与语句片段构造 |
| 文本 | 字符串、编码、IP、时间、UUID |
| 文件 | 目录读写、路径与 MIME |
| 安全 | 摘要、加密、签名与令牌 |
| HTTP | 响应信封、请求上下文、Cookie、视图与客户端 |
| HTTP API | HTTP 层各类的方法签名与返回值 |
| 支撑 | 类型判定、随机串、格式化、调试输出 |
| 接入已有框架 | 把内核绑定进宿主容器 |
| 1.x 升级 2.0 | 从 1.x 升级的路线、阶段与回滚 |
| 2.0 API 对照 | 查旧 API 对应的新写法 |
| 2.0 数字码对照 | 查旧数字码对应的具名枚举 |
| 2.0 门面方法对照 | 按门面类查旧方法对应的新入口 |
| 2.0 扩展迁移 | 旧自定义门面的三种替代方案 |
| 常见问题 | 遇到问题先来这里找 |
| 贡献指南 | 本地开发、验收命令与发版链路 |
| 更新日志 | 查各版本变更内容 |
| 完整文档站 | 在线阅读体验 |
📦 安装
composer require fxri/fxyin
运行环境要求 PHP 8.2 起,需开启 mbstring 与 openssl 扩展;其余能力依赖的 PSR 包按需安装。
🚀 快速上手
<?php declare(strict_types=1); use Fxri\KernelBuilder; $kernel = KernelBuilder::make() ->withConfigDir(__DIR__ . '/config') ->build(); // config/app.php 的内容位于 app 键下 echo $kernel->config()->get('app.name', '未命名');
装配项均可选,目录结构、注入方式与更多示例见快速开始。
🤝 参与贡献
开发环境、验收命令(pnpm verify)、提交规范与发版链路见贡献指南;问题反馈走 GitHub Issues。
📄 版权信息
作者:唐启云 tqy@fxri.net
出品:方弦研究所
版权:Copyright © 2016-2026 唐启云. All rights reserved.
网站:方弦研究信息网
商标:"方弦®"为第42类注册商标(注册号89648411),本开源许可不授予商标使用权,详见 TRADEMARK.md
方弦研究所为唐启云个人项目品牌与出品方,非独立法人实体;本软件著作权归唐启云所有。
