blast/application

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

框架无关的应用生命周期

v1.0 2015-11-06 09:05 UTC

This package is not auto-updated.

Last update: 2022-02-01 12:52:38 UTC


README

Latest Version on Packagist Software License Build Status Total Downloads Coverage Status

Blast应用的目标是提供一个考虑现代标准的框架无关的应用生命周期。

支持的规范包括 PSR-0, PSR-1, PSR-2, PSR-3, PSR-4, PSR-7, PSR-11 (Container-interop)。

安装

通过 Composer

$ composer require blast/application

用法

让我们构建我们的第一个基础应用。

基础

<?php

use Blast\Application\Kernel\Foundation as Application

$application = new Application();

配置

我们的应用基础已设置,现在我们可以设置我们的配置。

应用配置是一个 数组,只需将其传递给我们的配置。

我们可以直接传递

<?php

$application->setConfig([
  'name' => 'base application'
]);

或从任何地方接收配置数据

<?php

//should return an array!
$config = require_once __DIR__ . '/config.php';
$application->setConfig($config);

你可以自由选择如何传递配置。你也可以使用类似

容器

现代应用需要解耦复杂性。这意味着我们想要管理服务和自动注入它们。Blast应用遵循 container-interop/container-interop 的标准。

例如,我们使用 league/container

<?php

use League\Container;

$application->setContainer(new Container());

以下是一些 container-interop 实现的列表。

分发

我们的应用正在使用 PSR-7 请求和响应分发一个附加策略。在这个策略中,你可以定义自己的逻辑。

例如,我们使用 wellrested/wellrested 作为我们的 PSR-7 实现。

<?php

use WellRESTed\Message\Response;
use WellRESTed\Message\ServerRequest;
use Acme\Strategy;

$application->setStrategy(new Strategy);
$application->dispatch(ServerRequest::getServerRequest(), new Response);

packagist 或以下提供更多与 PSR-7 兼容的包

  • symfony/http-foundation 与 symfony/psr-http-message-bridge

变更日志

请参阅 CHANGELOG 了解最近更改的详细信息。

测试

$ composer test

贡献

请参阅 CONTRIBUTING 了解详细信息。

安全

如果你发现任何与安全相关的问题,请通过 email :author_email 而不是使用问题跟踪器。

鸣谢

许可

MIT许可(MIT)。请参阅许可文件获取更多信息。