我使用Symfony 2.3并在与Twig相关的探查器中发布了弃用警告。如:
DEPRECATION - Using "replace" with character by character replacement is deprecated
and will be removed in Twig 2.0
|replace
标签似乎仍然是Twig文档的一部分,所以我对如何处理此警告感到有些困惑。
此外,我从我使用的第三方软件包中获得了类似的弃用警告。
答案 0 :(得分:7)
您需要更改传递参数以更换twig中的函数的方式:
在它是两个参数之前,现在它是一个数组。
你可以在代码源中检查它不是替换的twig_replace_filter函数,但是只有一种方法是调用它:https://github.com/twigphp/Twig/blob/1.x/lib/Twig/Extension/Core.php#L534
请注意,twig doc显示正确的示例: http://twig.sensiolabs.org/doc/filters/replace.html
答案 1 :(得分:0)
事实上,修复它的唯一方法是替换所有已弃用的函数。
但是,只有通过以下方式升级你的树枝束时,这才会引起麻烦:
如果您的composer.json
中的标记不是版本(例如"twig/extensions": "1.*",
)
如果您使用需要twig 2.x的版本升级symfony
事实上,如果您使用此版本,您的项目将不会受到此警告的影响。