charcoal / app
Charcoal 应用程序,基于 Slim 3
v5.0.0
2024-03-13 17:50 UTC
Requires
- php: ^7.4 || ^8.0
- ext-pdo: *
- charcoal/cache: ^5.0
- charcoal/config: ^5.0
- charcoal/factory: ^5.0
- charcoal/translator: ^5.0
- charcoal/view: ^5.0
- league/climate: ^3.2
- league/flysystem: ^1.0
- monolog/monolog: ^1.17
- psr/http-message: ^1.0
- psr/log: ^1.0
- slim/slim: ^3.7
- vlucas/phpdotenv: ^5.4
Requires (Dev)
- league/flysystem-aws-s3-v3: ^1.0
- league/flysystem-memory: ^1.0
- league/flysystem-sftp: ^1.0
- mockery/mockery: ^1.0
- mustache/mustache: ^2.11
- php-coveralls/php-coveralls: ^2.2
- phpstan/phpstan: ^1.6
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.5
- tedivm/stash: ~0.16
Replaces
- dev-main / 5.x-dev
- v5.0.0
- v4.0.2
- v4.0.1
- v4.0.0
- v3.1.8
- v3.1.7
- v3.1.6
- v3.1.5
- v3.1.4
- v3.1.3
- v3.1.2
- v3.1.1
- v3.1.0
- v2.2.3
- v2.2.2
- v2.2.1
- v2.2.0
- v2.1.2
- 0.9.2
- 0.9.1
- 0.9.0
- 0.8.5
- 0.8.4.1
- 0.8.4
- 0.8.3.3
- 0.8.3.2
- 0.8.3.1
- 0.8.3
- 0.8.2
- 0.8.1
- 0.8.0
- 0.7.1
- 0.7
- 0.6.1
- 0.6
- 0.5.3
- 0.5.2
- 0.5.1.3
- 0.5.1.2
- 0.5.1.1
- 0.5.1
- 0.5.0.1
- 0.5
- 0.4.8
- 0.4.7
- 0.4.6
- 0.4.5.3
- 0.4.5.2
- 0.4.5.1
- 0.4.5
- 0.4.4
- 0.4.3
- 0.4.2
- 0.4.1
- 0.4
- 0.3.1
- 0.3
- 0.2.8
- 0.2.7
- 0.2.6
- 0.2.5
- 0.2.4
- 0.2.3
- 0.2.2
- 0.2.1
- 0.2
- 0.1.1
- 0.1
- dev-mcaskill-patch-improve-script-args
- dev-mcaskill-patch-from-base-path
- dev-slim4
- dev-fix/template-init
- dev-joel-start-fixing-config-merge
- dev-mducharme-scripts
- dev-mcaskill-develop
- dev-mcaskill-psr11
This package is auto-updated.
Last update: 2024-09-13 18:51:29 UTC
README
该应用程序包提供了与 Slim 和 Pimple 的集成,用于构建面向用户的 Web 应用程序和 API。
安装
composer require charcoal/app
概述
应用程序包是一组 模块、路由(模板
、操作
和 脚本
)、处理器 和 服务,通过 配置、服务容器 和 服务提供者 连接在一起。
该框架具有以下内部和外部功能:
- PSR-3 日志记录器
- PSR-6 缓存系统[†]
- PSR-7 内核(Web、API、CLI)
- PSR-11 容器
- 翻译层[†]
- 文件系统层
- 数据库层
- 视图层[†]
注意
- [†] 由外部 Charcoal 组件提供。
组件
Charcoal 应用程序的主要组件包括
了解更多关于 组件 的信息。
服务提供者
依赖和扩展由依赖容器处理,使用 Pimple,可以通过 服务提供者(Pimple\ServiceProviderInterface
)定义。
包含的服务提供者
Charcoal 应用程序附带一些内置的服务提供者。所有这些都在 Charcoal\App\ServiceProvider
命名空间内
外部服务提供者
Charcoal 应用程序需要一些来自独立组件的服务提供者。以下使用它们自己的命名空间,并通过 AppServiceProvider
自动注入
了解更多关于 服务提供者 的信息。
使用方法
典型的前端控制器 (www/index.php
)
use Charcoal\App\App; use Charcoal\App\AppConfig; use Charcoal\App\AppContainer; include '../vendor/autoload.php'; $config = new AppConfig(); $config->addFile(__DIR__.'/../config/config.php'); $config->set('ROOT', dirname(__DIR__) . '/'); // Create container and configure it (with charcoal/config) $container = new AppContainer([ 'settings' => [ 'displayErrorDetails' => true, ], 'config' => $config, ]); // Charcoal / Slim is the main app $app = App::instance($container); $app->run();
有关使用 charcoal/app
的完整项目示例,请参阅 charcoal/boilerplate。
资源
- 贡献
- 在 主 Charcoal 仓库 中 报告问题 和 发送拉取请求