Symfony Flex:现代Symfony项目管理工具
Symfony Flex并非Symfony的下一个版本,而是Symfony Installer的现代替代品,它是一个Composer插件,修改了require
和update
命令的行为。在安装或更新依赖项时,Symfony可以在Composer任务执行前后执行额外任务。本文将探讨Symfony Flex及其与Symfony 4升级的关系。
核心要点:
web
目录替换为public
目录、临时文件位于项目根目录下的/var
目录、源代码位于/src
目录、配置文件位于/config
目录、模板位于/templates
目录。仍在开发中:
Symfony Flex和Symfony 4仍在开发中(截至2017年11月)。本文中提到的某些功能可能已更改。 特别是使用Makefile和make工具在Symfony/Console不可用时构建项目的功能,目前还不稳定。
与以往的不同之处:
主要区别在于Flex对Symfony 4更新的兼容性:
public
目录替代web
目录:与其他主流框架保持一致。/var
目录:/var/cache
子目录用于长期缓存。/src
目录:不再使用/app
目录。/config
目录:/templates
目录:composer config extra.symfony.allow-contrib true
启用社区贡献的Recipes。快速入门:
使用Symfony Skeleton App创建项目:
<code class="language-bash">composer create-project symfony/skeleton flexy</code>
/public
目录中只有index.php
文件,环境类型由环境变量决定,配置读取自/config
目录。
添加Bundle:
<code class="language-bash">composer req template</code>
Flex会自动激活Bundle并设置/templates
目录和config/packages/twig.yaml
文件。
大型Bundle:
例如,安装EasyAdmin Bundle:
<code class="language-bash">composer req admin</code>
这需要数据库配置。
非官方Bundle:
需要先启用社区贡献的Recipes:
<code class="language-bash">composer config extra.symfony.allow-contrib true</code>
然后安装非官方Bundle,例如Ramsey的UUID-Doctrine Bundle:
<code class="language-bash">composer req ramsey/uuid-doctrine</code>
第三方工具:
第三方工具需要手动注册和移除。
总结:
Symfony Flex是现代化的Symfony应用安装和管理方式,是迈向Symfony 4的关键一步。
Symfony Flex常见问题解答:
composer require symfony/flex
安装。composer require
安装,composer remove
移除。
请注意,图片的格式保持不变。
以上是Symfony Flex:铺平通往更快,更好的象征的道路的详细内容。更多信息请关注PHP中文网其他相关文章!