Deprecated Features¶
This document lists deprecated features in Twig 3.x. Deprecated features are kept for backward compatibility and removed in the next major release (a feature that was deprecated in Twig 3.x is removed in Twig 4.0).
Functions¶
The
twig_test_iterablefunction is deprecated; use the native PHPis_iterablefunction instead.
Extensions¶
All functions defined in Twig extensions are marked as internal as of Twig 3.9.0, and will be removed in Twig 4.0. They have been replaced by internal methods on their respective extension classes.
If you were using the
twig_escape_filter()function in your code, use$env->getRuntime(EscaperRuntime::class)->escape()instead.The following methods from
Twig\Extension\EscaperExtensionare deprecated:setEscaper(),getEscapers(),setSafeClasses,addSafeClasses(). Use the same methods on theTwig\Runtime\EscaperRuntimeclass instead:Before: $twig->getExtension(EscaperExtension::class)->METHOD()
After: $twig->getRuntime(EscaperRuntime::class)->METHOD();
Node Visitors¶
The
Twig\NodeVisitor\AbstractNodeVisitorclass is deprecated, implement theTwig\NodeVisitor\NodeVisitorInterfaceinterface instead.
Templates¶
Passing
Twig\Templateinstances to Twig public API is deprecated (like inEnvironment::resolveTemplate(),Environment::load(), andTemplate::loadTemplate()); pass instances ofTwig\TemplateWrapperinstead.