新在Symfoob娱乐下载ny 2.8:最后的改进
警告:这篇文章是关于一个不受支持的Symfony的版本。ob娱乐下载其中一些信息可能是过时了。阅读最近的Symfony文档ob娱乐下载。
这篇文章是最后一个新在Symfoob娱乐下载ny 2.8系列。它解释了五个小但有用的改进中引入一些Symfony组件。ob娱乐下载
增加了一个非静态CssSelector组件的API
提供的
克利斯朵夫Coevoet在# 15934。
在Syob娱乐下载mfony 2.7中,CssSelector组件暴露一个静态API CSS选择器转换为XPath表达式。在Syob娱乐下载mfony 2.8中,我们添加了一个新的非静态API:
1 2 3 4 5 6 7 8 9 10
/ /之前使用ob娱乐下载\组件\CssSelector\CssSelector;美元表达式= CssSelector::toXPath (“div.item > h4 >“);/ /后使用ob娱乐下载\组件\CssSelector\CssSelectorConverter;美元转换器=新CssSelectorConverter ();美元表达式=美元转换器- >toXPath (“div.item > h4 >“);
这个新的API允许保持转换器的引用对象及其内部对象图,这在某些情况下可能会比重建一切当你执行转换。
此外,HTML现在选为默认格式。如果你是使用XML内容,通过假
的论点CssSelectorConverter
类:
1 2 3 4 5
/ /之前使用ob娱乐下载\组件\CssSelector\CssSelectorConverter;美元转换器=新CssSelectorConverter (假);美元表达式=美元转换器- >toXPath (“项目> >项目标题”);
这个组件是使用Symfony开发者通过DomCrawler组件的测ob娱乐下载试。在这种情况下,这种变化并不影响你以任何方式,你不需要做任何额外的变化。
添加域控制台组件异常
提供的
杰罗姆Tamarelle
在# 14894。
控制台组件使用通用PHP异常等InvalidArgumentException
和LogicException
。在Syob娱乐下载mfony 2.8中,使组件与框架的其他部分一致,使用自定义异常。
这些“领域异常”允许生成更好的错误消息。例如,当一些命令并没有发现,在一些地方,我们只是把这个异常:
1
扔新\ InvalidArgumentException (美元消息);
现在,我们把这个其他自定义异常允许定义一系列的替代命令与一个没有找到类似的名称:
1
扔新CommandNotFoundException (美元消息,美元选择);
这是第一个自定义异常为控制台定义组件:
CommandNotFoundException
ExceptionInterface
InvalidArgumentException
InvalidOptionException
LogicException
RuntimeException
增加了一个新的ClassCache
缓存温暖
为了提高性能和减少I / O负载,Symfony会生成一个大的ob娱乐下载classes.php
文件缓存的内容最访问的类。包,包括你的,可以通过将新类添加到这个文件addClassesToCompile ()
方法。
在Syob娱乐下载mfony 2.8中,我们添加了一个新的缓存生成这个暖和classes.php
文件。这个新的温暖删除已知的第一个打击缓慢Symfony应用程序(即使缓存已经热身)。ob娱乐下载此外,这个特性还允许做一个Symfony应用程序可运行在一个只读文件系统(例如在一个码头ob娱乐下载工人容器)。
允许在非标准热身树枝模板路径
正如你可能知道,Symfony应用ob娱乐下载程序可以定义定制的树枝名称空间。假设您正在使用一些第三方库,包括生活在树枝模板供应商/ acme / foo bar /模板
。你可以参考这些模板@foo_bar / <模板名称>
如果您定义以下配置:
1 2 3 4 5
# app / config / config.yml枝:#……道路:“% kernel.root_dir % / . . /供应商/ acme / foo bar /模板”:foo_bar
在Syob娱乐下载mfony 2.8中,在这些自定义名称空间定义的模板会自动编译缓存热身。这将导致一个(小)的性能提升。
允许每个防火墙配置一个用户检查
在身份验证的用户,可能需要额外的检查来验证,如果确定是允许用户登录。ob娱乐下载Symfony执行这些检查与实现的类ob娱乐下载
。这个接口定义了两个方法checkPreAuth ()
和checkPostAuth ()
执行检查之前和之后的用户身份验证。
在Syob娱乐下载mfony 2.8中,这些用户检查变得更有用,因为您可以使用一个定制的用户检查每个防火墙由于新user_checker
选择:
1 2 3 4 5 6 7 8 9 10 11 12
服务:app.admin_user_checker:类:App \安全\ AdminUserChecker参数:- - - - - -“@request_stack”安全:防火墙:secured_area:模式:^ /管理#……user_checker:app.admin_user_checker
允许检索一个事件侦听器的优先级
最常见的一种特性请求EventDispatcher组件是添加一个方法来检索给定的事件监听器的优先级。在Syob娱乐下载mfony 2.8我们终于包括这种方法,调用getListenerPriority ()
不同的EventDispatcher
实现。
这将帮助你找出哪些需要重点覆盖另一个事件监听器没有挖掘的来源。新方法的第一个参数是事件名,第二个参数是侦听器:
1 2 3 4 5 6
美元eventDispatcher- >addListener (“post.published”,美元侦听器,-10年);美元优先级=美元eventDispatcher- >getListenerPriority (“post.published”,美元侦听器);/ /优先级= -10美元美元优先级=美元eventDispatcher- >getListenerPriority (“wrong_event”,美元侦听器);/ / $优先级= null
评论
评论都关门了。
以确保评论保持相关,他们关闭了旧的帖子。