不需要 HTTP 介面
如果你的應用程式不需要任何 HTTP 介面(例如,僅限控制檯應用程式),你將至少禁用 Twig
和 SensioFrameworkExtra
只需註釋掉這些內容:
應用程式/ AppKernel.php
$bundles = [
//...
// new Symfony\Bundle\TwigBundle\TwigBundle(),
// new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
//...
if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {
//...
// $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
應用程式/配置/ config.yml
framework:
# ...
# router:
# resource: '%kernel.root_dir%/config/routing.yml'
# strict_requirements: ~
# ...
# templating:
# engines: ['twig']
#...
#twig:
# debug: '%kernel.debug%'
# strict_variables: '%kernel.debug%'
應用程式/配置/ config_dev.yml
#framework:
# router:
# resource: '%kernel.root_dir%/config/routing_dev.yml'
# strict_requirements: true
# profiler: { only_exceptions: false }
#web_profiler:
# toolbar: true
# intercept_redirects: false
你還可以從 composer.json 中刪除相關的供應商要求 :
"sensio/framework-extra-bundle": "x.x.x",
"twig/twig": "x.x"
在這種情況下完全使用 Symfony 是有爭議的,但至少它可以是暫時的。