这是关于Symfony 3.2亮点系列的最后一篇文章。在6个月的工作和数百次的pull requests(其中有超过200项被标记为“新功能”)之后,Symfony 3.2将于本月末发布。
VarDumper的改进
            Contributed by 
            Nicolas Grekas.
        
VarDumper组件 在Symfony 3.2中得以大幅强化并新增多项功能。另外还有一个最有意思的选项,是返回剥离出的内容而不是输出它们。当使用组件中的方法而不是Twig中的 dump() 函数时,这令你能够把剥离的内容存到字符串中:
| 1 2 3 4 5 6 7 8 9 10 11 | use Symfony\Component\VarDumper\Cloner\VarCloner;
use Symfony\Component\VarDumper\Dumper\CliDumper;
 
$cloner = new VarCloner();
$dumper = new CliDumper();
 
// Before: dump contents / 之前:剥离内容
$dumper->dump($cloner->cloneVar($variable));
 
// After: store the dumped contents in a string / 之后:将剥离出的内容存到字符串
$result = $dumper->dump($cloner->cloneVar($variable), true); | 
其他有趣功能是 maxDepth 和 maxStringLength 的显示选项 (见 #18948) 以及将“克隆出来的数据结构之局部”dump出来的能力 (见 #19672)。
允许编译使用了annotations的类
            Contributed by 
            Titouan Galopin 
            in #19205.
        
提升Symfony程序性能的一个简单方式,是在你的bundles中使用 addClassesToCompile() 方法,把你的一些类,给添加到由Symfony生成的启动文件(boostrap file)中,即可降低I/O文件吞吐操作。
然而这个方法的一个特别要求是,你不能编译使用了annotations的类。在Symfony 3.2中,我们添加了一个全新的 addAnnotatedClassesToCompile() 方法,允许缓存那些类了。编译带有annotations的类的一个好处是,annotation reader的缓存也被warm up了。(译注:缓存预热是为了避免缓存命中发生在首位用户身上,参考 这里)
最后,addClassesToCompile() 和 addAnnotatedClassesToCompile() 都支持在声明类时使用通配符:
| 1 2 3 4 5 6 7 | $this->addAnnotatedClassesToCompile(array(
    // classes defined using wildcards / 使用通配符定义的类
    '**Bundle\\Controller\\',
    '**Bundle\\Entity\\',
    // class defined explicitly using its FQCN / 使用FQCN显式定义的类
    'Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller',
)); | 
从FrameworkBundle中删除了的依赖
            Contributed by 
            Fabien Potencier.
        
Symfony FrameworkBundle 把解耦的组件带入到web开发框架中。在之前的Symfony版本中,这个bundle定义了一大堆“用到那些组件”的硬性依赖。
Symfony 3.2中,我们消除了大量硬性依赖,所以如果你不需要的话,这些组件将不在你的程序中进行安装:Templating组件,Translation组件,Asset组件,Security core和Security CSRF组件,以及Doctrine的annotations库等。
为ExpressionLanguage新增了一个AST dumper
            Contributed by 
            Grégoire Pineau 
            in #19013.
        
在Symfony 3.2中,ExpressionLanguage组件 添加了一种方法来dump表达式的AST (Abstract Syntax Tree)。这将能够静态地去分析表达式(来验证它们、优化它们,等等),乃至能够动态地去调整表达式。
重构的Twig Extension
            Contributed by 
            Fabien Potencier 
            in #20093,
            #20094.
        
从Twig 1.26起,filters, functions 以及 tests,可以使用一个“与其所属的extension”不同的类。在Symfony 3.2中,最为严苛的Twig extensions已基于此项功能而重构,诸HttpKernelExtension,它定义了 render() 和 controller() 这两个Twig函数。此外,还引入了一些优化措施,来避免Twig扩展在与其相关联的组件“未被安装”时被加载。
 4.2翻译中
                     4.2翻译中

 
                     
                    