miny / framework

Miny框架的核心包。

此包的官方仓库似乎已不存在,因此该包已被冻结。

dev-master 2016-05-06 09:46 UTC

This package is not auto-updated.

Last update: 2022-04-16 03:16:43 UTC


README

Miny是一个小巧的PHP框架。它正在不断开发中,不建议用于生产环境。Miny作为一个微框架开发,但其功能可以通过强大的模块扩展。

Miny遵循MIT许可。

要求

  • PHP 7
  • Composer

安装,基本使用

空应用模板可在此处找到

如果您想使用默认的日志选项,请创建一个名为/logs的可写目录。

环境

有三个不同的环境可供选择:开发和生产。当前环境可以通过应用程序类的构造函数设置,并确定应使用哪些配置文件。默认情况下,环境设置还决定了是否启用调试级别的日志。

默认环境是生产环境。

定义要使用的环境

在实例化应用程序类时,将所需的常量作为构造函数的第一个参数传递。

$app = new Application(Application::ENV_DEV);

可用的常量有

  • Application::ENV_DEV - 开发环境
  • Application::ENV_TEST - 测试环境
  • Application::ENV_PROD - 生产环境

配置

配置文件是包含配置选项的纯PHP文件。配置文件位于应用程序的/config目录中。

可以定义四个不同的配置文件

  • config.common.php适用于所有环境
  • config.dev.php仅用于开发环境
  • config.test.php将用于测试环境
  • config.php用于生产环境

config.common.php包含基线配置。在此处设置值将作为默认值,可以被特定于环境的配置文件覆盖。

服务

使用控制反转容器

Miny包含一个名为Container的强大控制反转(IoC)容器。它可以用于创建具有自动注入依赖关系的对象实例。

获取容器

可以通过调用$app->getContainer()来获取容器实例。

基本使用

实例化一个类就像调用get方法并传递类名一样简单。

$instance = $container->get('\\Namespace\\ClassName');

为什么这很有用?对于最简单的使用场景,这种方法只会产生很多开销。然而,当一个类对其他尚未实例化的对象有多个依赖时,Container 将会负责跟踪创建该类所需的所有必要数据。

待定