传递给twig_template_from_string()的参数3必须为字符串类型或null

时间:2020-03-02 13:18:33

标签: symfony symfony-3.4

我做了Symfony版本(3.4.26-> 3.4.37)的更新,由于此更新,我出现以下错误:

类型错误:传递给twig_template_from_string()的参数3必须为 类型为字符串或null的对象,给定,在 /var/www/html/var/cache/dev/twig/09/0965cdf4a4c2728abc6e3a7f526f3e5ee9321e47e22a23568e44c13454b5ad97.php 在第132行

版本之间是否对此功能进行了某些更新?

1 个答案:

答案 0 :(得分:0)

根据您提供的信息,将很难理解到底发生了什么。但是...

  1. 在第132行打开/var/www/html/var/cache/dev/twig/09/0965cdf4a4c2728abc6e3a7f526f3e5ee9321e47e22a23568e44c13454b5ad97.php

  2. 逐行向上滚动,直到看到类似

  3. 的评论
 // line 3

现在我们知道这是关于文件X的第三行,但是哪个文件是X?让我们找出...。导航到文件顶部,直到找到类似

/* @WebProfiler/Collector/config.html.twig */

这将刚好在缓存文件中的类声明上方。很棒,现在您知道它是什么源文件了。

  1. 在第3行(或任何引起麻烦的行)中打开源文件 现在,您应该知道对象是什么,以及为什么它不是函数描述的东西。

我看到已经实现了php 7.4兼容性( https://github.com/symfony/symfony/blame/v3.4.37/composer.json#L23 ) 这意味着可能会发生一些参数和类型提示更改。

如果这不能为您解决问题,只需添加另一个更具描述性的问题,并避免向人们询问您的缓存文件(我们永远不会有:)

祝你好运!