solenoid / core
HTTP MVC 框架
Requires
- php: >=7.3.0
- solenoid/bin: ^1.0.0
- solenoid/cdn: ^1.0.0
- solenoid/collection: ^1.0.0
- solenoid/core-lib: ^1.0.0
- solenoid/csv: ^1.0.0
- solenoid/datetime: ^1.0.0
- solenoid/debug: ^1.0.0
- solenoid/keygen: ^1.0.0
- solenoid/mysql: ^1.0.0
- solenoid/network: ^1.0.0
- solenoid/rpc: ^1.0.0
- solenoid/smtp: ^1.0.0
- solenoid/sse: ^1.0.0
- solenoid/text: ^1.0.0
- solenoid/vector: ^1.0.0
- solenoid/xml: ^1.0.0
- solenoid/zip: ^1.0.0
This package is auto-updated.
Last update: 2024-09-18 00:13:44 UTC
README
核心 是一个智能的 HTTP/CLI MVC 框架,用于构建易于或非常复杂的端点,并集成了大量后端库。
当前项目包含一个示例 Web 应用,以帮助开发者更容易地学习该框架的内部逻辑。
对于官方和完整的文档,您应导航至 知识库。
设置
要创建一个新的 Core 项目,您只需从终端运行以下命令即可
git clone https://github.com/Solenoid-IT/php-core ./core
cd ./core/private
php x init
要求
OS >= Ubuntu 22.04.1 LTS
WebServer >= Apache 2.4
Runtime-Environment >= PHP 7.3
上下文
Core 可以使用相同的代码库同时运行 HTTP 和 CLI 上下文
HTTP = 路径解析器 -> 网关 -> 中间件组 -> 控制器 -> 响应
CLI = 任务运行器 -> 响应
存储、模型 和 服务 对象在 HTTP 和 CLI 之间共享,因此它们只定义一次,可在两个上下文中使用。
日志
Core 将捕获并记录所有抛出的错误以及每次执行调用
环境
Core 使您能够在不同的专业环境类型下运行("dev" 和 "prod" 是保留的,但您可以定义自定义的)
dev = 此类型将显示系统中的每个错误,并在您使用 Core::asset 函数定义资产 URL 时使用未缓存的 Web 资产(CSS、JS 或其他静态资源)
prod = 此类型将隐藏系统中的每个错误(安全问题)并使用缓存的 Web 资产以提高前端性能和 UX
custom = 此类型可以自定义定义
(错误日志将独立于当前环境设置进行跟踪)
实用工具
Core 集成了一个顶级 CLI 实用工具 "x",可以执行一些有用的操作,例如初始化项目、安装包、管理 Git 仓库、创建对象(存储库、模型、服务、中间件或控制器)、管理 Apache、证书和 cron。
路由
Core 有一个映射文件来定义如何通过其 URL 路径解析请求。
路由 -> 转向目标对象(您可以向其附加多个中间件组或标签)
路径 -> 可以是静态的或动态的(包含占位符变量)
动词 -> 路径的 HTTP 动词(例如 GET、RPC、SSE 或 DELETE)
目标 -> 将运行堆栈的对象(网关 -> 中间件组 -> 控制器)
集成
Core 内置了对 SvelteKit 作为前端 JS 框架的支持。
您可以通过执行以下命令来安装它: php x svelte install
UI
此项目使用 sb-admin 作为 UI 模板
性能
引导过程中使用的内存(最小消耗)
HTTP -> 216 B
CLI -> 96 B
许可
Solenoid 核心 框架受 MIT 许可证约束,因此它是开源友好的