miniframe / core
v1.2.0
2022-07-20 16:52 UTC
Requires
- php: >=7.3
- ext-json: *
Requires (Dev)
- garrcomm/phpunit-helpers: ^1.0
- phpunit/phpunit: ^9.4
- squizlabs/php_codesniffer: ^3.5
README
这是 Miniframe PHP 框架的核心包。更多信息,请查看 主项目:https://bitbucket.org/miniframe/miniframe-php-framework。
核心类说明
该框架包含几个核心类。这些类用于该核心
类 | 描述 |
---|---|
AbstractController | 所有控制器都应该扩展此类。它包含 Request 和 Config 对象。 |
AbstractMiddleware | 所有中间件都应该扩展此类。它包含 Request 和 Config 对象。 |
Bootstrap | 该框架的启动器。 |
Config | 解析配置文件并提供接口以请求其内容。 |
Registry | 可以用于存储和稍后检索对象的注册表。 |
Request | 解析网络请求并提供接口以读取请求。 |
Response | 在控制器中填充(或扩展)此对象以向客户端返回内容。 |
核心包中包含的中间件
在 主项目 中,您会看到配置文件中的 middleware
指令。可以加载多个中间件,并且它们按配置顺序加载。
这些中间件包含在 Miniframe Core 包中,可用于快速设置基本应用程序,或作为构建自己的中间件类的示例。
类名 | 描述 |
---|---|
UrlToMvcRouter | URL 到 MVC 路由器;文档在 src/Middleware/UrlToMvcRouter.md |
BasicAuthentication | 基本 HTTP 身份验证;文档在 src/Middleware/BasicAuthentication.md |
Session | PHP 会话;文档在 src/Middleware/Session.md |
AccessList | 根据 IP 地址拒绝/允许客户端;文档在 src/Middleware/AccessList.md |
中间件的完整列表可以在 https://miniframe.dev/middlewares 找到。
核心包中包含的预定义响应类型
类名 | 类型 | 描述 |
---|---|---|
Response | 成功 | 主要响应对象,所有其他对象都扩展自它。 |
JsonResponse | 成功 | 以 JSON 格式返回数据。 |
PhpResponse | 成功 | 使用 PHP 模板创建适当的响应。 |
StreamResponse | 成功 | 用于大文件的 200 OK 基本响应。 |
RedirectResponse | 成功 | 基本的 302 重定向页面。 |
UnauthorizedResponse | 错误 | 基本的 401 未授权页面。 |
ForbiddenResponse | 错误 | 基本的 403 禁止页面。 |
NotFoundResponse | 错误 | 基本的 404 未找到页面。 |
InternalServerErrorResponse | 错误 | 基本的 500 内部服务器错误页面。 |
响应对象可以在控制器方法中返回或抛出。抛出响应对于错误页面特别有用。
针对 Windows 开发者的提示
在 bin
文件夹中,存在一些批处理文件,以简化开发。
如果您安装了Windows版的Docker Desktop,您可以使用bin\composer.bat、bin\phpcs.bat、bin\phpunit.bat、bin\phpstan.bat以及bin\security-checker.bat作为Composer、CodeSniffer、PHPUnit、PHPStan和安全检查器的快捷方式,无需在您的机器上安装PHP和其他依赖项。
在Bitbucket Pipelines中,使用相同的Docker容器和工具来自动测试此项目。