tekton/framework

此包已被弃用,不再维护。作者建议使用soma/soma包。

Tekton是一个轻量级的PHP微框架,旨在作为垫片集成到旧代码库中,以启用现代设计模式。

3.0.1 2018-11-25 02:11 UTC

This package is auto-updated.

Last update: 2020-06-09 20:11:02 UTC


README

Tekton是一个轻量级的PHP微框架,旨在作为垫片集成到旧代码库中,以启用现代设计模式。tekton/framework是子框架的核心,提供配置加载、依赖注入容器、环境加载、服务提供者、门面和类别名。

创建它的原因是在更受限的环境中工作时,允许集成现代设计模式的力量和易用性。一个很好的例子是Dynamis项目,该项目正是通过启用WordPress环境中的此功能来实现这一点的。

安装

composer require tekton/framework

使用方法

要开始使用,只需在您的composer配置中包含项目,提供一个PSR-11容器并初始化框架。

require_once 'vendor/autoload.php';

use Tekton\Framework;
use DI\Container;

$framework = Framework::getInstance();
$framework->setContainer(new Container)
          ->setEnvironment('development')
          ->setResourceCaching(true)
          ->setCacheDir(__DIR__.'/cache')
          ->registerConfig(__DIR__.'/config');
          ->setFacadeAliases('Project\\Facades', __DIR__.'/Facades')
          ->registerAlias('ProjectClass', 'Project\\Class');

$framework->registerProvider([
    \Project\Providers\ServiceOne::class,
    \Project\Providers\ServiceTwo::class,
    \Project\Providers\ServiceThree::class,
]);

$framework->init(__DIR__, 'https://:8000/');

有几种辅助函数可以快速检索配置值、服务或资源URI。如果需要在注册提供者或别名之前检索配置值,您也可以分步骤初始化框架。

$framework = Framework::getInstance();
$framework->setContainer(new Container)
          ->registerConfig(__DIR__.'/config')
          ->loadEnv()
          ->loadConfig();

$framework->registerProvider(app('config')->get('app.providers'));
$framework->registerAlias(app('config')->get('app.aliases'));

$framework->init(__DIR__, 'https://:8000/');

许可证

MIT