Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 什么会导致树枝变慢?_Php_Twig - Fatal编程技术网

Php 什么会导致树枝变慢?

Php 什么会导致树枝变慢?,php,twig,Php,Twig,我正在使用Twig进行大规模项目,在对Twig进行了大量分析之后,我发现Twig导致脚本执行速度特别慢 如果我删除代码的细枝部分,它可以在大约0.03秒内执行。将细枝片放回后,它将在0.1秒内执行 我只使用基本的细枝功能,例如: 打印/回显{{SomeVar} 循环{Items%}中的项的% 如果语句 模板的代码非常短,循环最多有8次迭代 有没有人对是什么原因导致这种减速有什么建议?或者这仅仅是Twig的现状,我应该接受吗?你应该避免使用Twig,因为它会弄乱MVC原则。简而言之,解析需要时

我正在使用Twig进行大规模项目,在对Twig进行了大量分析之后,我发现Twig导致脚本执行速度特别慢

如果我删除代码的细枝部分,它可以在大约0.03秒内执行。将细枝片放回后,它将在0.1秒内执行

我只使用基本的细枝功能,例如:

  • 打印/回显{{SomeVar}
  • 循环{Items%}中的项的%
  • 如果语句
模板的代码非常短,循环最多有8次迭代


有没有人对是什么原因导致这种减速有什么建议?或者这仅仅是Twig的现状,我应该接受吗?

你应该避免使用Twig,因为它会弄乱MVC原则。简而言之,解析需要时间,Twig和大多数模板引擎在运行时都很昂贵。解决方案只是缓存渲染的模板,因此Twig不会渲染每个请求cycle@MichaelArenzon谢谢你的回答——这将是我的“B计划”,但我希望还有其他事情要做。谢谢@夏洛特德诺伊斯你能提供一篇文章或其他东西来解释细枝是如何搞乱MVC的吗?提前感谢。@MarkHünermundJensen它不应该是真正的“计划B”,因为缓存通常是一种好的做法,而且没有任何真正好的理由来解释为什么要让Twig/Anwhere引擎渲染每个请求。在进行部署时,只需让系统同时删除所有缓存的模板。