skar / mezzio-skeleton
Laminas mezzio 骨架。秒速开始开发 PSR-15 中间件应用程序!
Requires
- php: ~8.1.0 || ~8.2.0 || ~8.3.0
- composer/package-versions-deprecated: ^1.10.99
- laminas/laminas-component-installer: ^2.6 || ^3.0
- laminas/laminas-config-aggregator: ^1.6
- laminas/laminas-diactoros: ^3.0.0
- laminas/laminas-stdlib: ^3.6
- mezzio/mezzio: ^3.7
- mezzio/mezzio-helpers: ^5.7
Requires (Dev)
- chubbyphp/chubbyphp-laminas-config: ^1.3.0
- composer/composer: ^2.7.7
- elie29/zend-phpdi-config: ^9.0.1
- filp/whoops: ^2.15.4
- jsoumelidis/zend-sf-di-config: ^0.5.1
- laminas/laminas-coding-standard: ~2.5.0
- laminas/laminas-development-mode: ^3.12.0
- laminas/laminas-servicemanager: ^3.22.1
- mezzio/mezzio-fastroute: ^3.11.0
- mezzio/mezzio-laminasrouter: ^3.9.0
- mezzio/mezzio-laminasviewrenderer: ^2.15.1
- mezzio/mezzio-platesrenderer: ^2.10.0
- mezzio/mezzio-tooling: ^2.9
- mikey179/vfsstream: ^1.6.11
- phpunit/phpunit: ^10.5.28
- psalm/plugin-phpunit: ^0.19.0
- roave/security-advisories: dev-master
- vimeo/psalm: ^5.25
This package is auto-updated.
Last update: 2024-08-31 05:55:39 UTC
README
秒速开始开发 PSR-15 中间件应用程序!
mezzio 基于 laminas-stratigility 构建,提供了一个具有路由、DI 容器、可选模板和可选错误处理功能的极简 PSR-15 中间件框架。
此安装程序将根据用户输入选择可选包来设置基于 mezzio 的骨架应用程序。
用户选择的包将保存到 composer.json
中,以便项目中的每个人都安装相同的包。为首次使用准备了配置文件和模板。设置成功后,从 composer.json
中删除安装命令,并删除所有相关安装文件。
入门
使用 composer 开始新的 Mezzio 项目
$ composer create-project mezzio/mezzio-skeleton <project-path>
选择并安装您想要的包后,转到 <项目路径>
并启动 PHP 的内置 Web 服务器以验证安装
$ composer serve
然后您可以浏览到 http://localhost:8080。
安装替代包
有一个功能可以安装替代包:您实际上可以输入包名和版本,而不仅仅是选择之一。
Which template engine do you want to use? [1] Plates [2] zend-view installs zend-servicemanager [n] None of the above Make your selection or type a composer package name and version (n): infw/pug:0.1 - Searching for infw/pug:0.1 - Adding package infw/pug (0.1)
该功能允许您安装任何想要的替代包。但这也有其局限性
- 替代包必须遵循此格式
namespace/package:1.0
。它需要正确的版本。 - 模板不会复制,但 ConfigProvider 可以配置为直接使用包本身中的默认模板。
- 对于容器,这不起作用,因为需要复制 container.php 文件。
故障排除
如果安装程序在 composer create-project
阶段失败,请在打开新问题之前先查看以下列表。我们迄今为止看到的大多数问题都可以通过 self-update
和 clear-cache
解决。
- 确保使用最新版本的 composer,运行
composer self-update
。 - 尝试通过运行
composer clear-cache
清除 Composer 的缓存。
如果上述任一方法都不起作用,您可能面临更严重的问题
- 有关 zlib_decode 错误 的信息。
- 有关 composer 降级模式 的信息和解决方案。
应用程序开发模式工具
此骨架包含 laminas-development-mode。它提供了一个 composer 脚本,允许您启用和禁用开发模式。
要启用开发模式
注意:不要在生产服务器上运行开发模式!
$ composer development-enable
注意:启用开发模式还将清除您的配置缓存,以便安全地更新依赖关系并确保应用程序能够获取任何新的配置。
要禁用开发模式
$ composer development-disable
开发模式状态
$ composer development-status
配置缓存
默认情况下,骨架将在 data/config-cache.php
创建配置缓存。在开发模式下,配置缓存将被禁用,并且在开发模式之间的切换将会移除配置缓存。
在生产环境中部署时,如果您部署到相同的目录,可能需要清除配置缓存。您可以按照以下步骤操作:
$ composer clear-config-cache
您还可以通过编辑 config/config.php
文件并更改本地 $cacheConfig
变量的 config_cache_path
条目来更改配置缓存的位置。
骨架开发
本节仅适用于您使用 git clone
克隆此仓库的情况,不适用于您使用 composer create-project ...
安装 mezzio 的情况。
如果您想对安装程序进行测试,您需要克隆此仓库并使用 composer 安装所有依赖项。
请确保使用 --no-scripts
防止 composer 运行脚本,否则它将删除安装程序和所有测试。
$ composer update --no-scripts
$ composer test
请注意,安装程序测试在运行测试前后会删除已安装的配置文件和模板。
在贡献之前,请阅读 贡献指南。