🧩
最小装配
KernelBuilder 链式装配,配置目录、日志、翻译器、HTTP 客户端与适配器全部可选;内核不可变,只暴露读取入口。
composer require fxri/fxyin装配一个内核,随后按需取用配置与翻译:
<?php
declare(strict_types=1);
use Fxri\KernelBuilder;
$kernel = KernelBuilder::make()
->withConfigDir(__DIR__ . '/config')
->build();
// 取配置,config/app.php 的内容位于 app 键下
$name = $kernel->config()->get('app.name', '未命名');
// 取翻译,未注入翻译器时由内置词条兜底
echo $kernel->trans('欢迎');详细步骤见快速开始。
| 痛点 | 本框架的做法 |
|---|---|
| 参数校验、文件操作、加解密这些碎活,换个项目就得重写一遍 | 九类高频能力内置为纯静态类,use 进来即可调用,不绑定任何框架生命周期 |
| 为了一个工具函数引入重量级框架,容器、路由、中间件一并背上 | 不引入依赖注入容器、不提供路由与 MVC 基类;装配项全部可选,缺省即有可用实现 |
| 老代码里的数字码与点分模式号,过半年没人看得懂 | 全部改为具名枚举与链式方法,调用处自带语义 |
| 1.x 升级到 2.0 改动面大,不知从哪下手 | 2.0 迁移说明 逐项列出旧 API 到新 API 的对照与不再提供的能力 |
| 文档散落在 README,翻起来靠关键词硬找 | 独立文档站,带全站中文搜索、按能力层划分的侧栏与逐页目录 |
| 文档 | 适合谁 |
|---|---|
| 快速开始 | 第一次接触,想先把框架跑起来 |
| 2.0 迁移 | 从 1.x 升级,需要逐项对照改造 |
| 更新日志 | 查各版本变更内容 |
mbstring(必需)、openssl(安全相关功能需要)psr/http-client、psr/http-message、psr/http-factory 及其实现(如 symfony/http-client、nyholm/psr7)