草庐IT

symfony-components

全部标签

php - 依赖注入(inject) : pulling required components when they are actually needed

DI背后的要点是让一个类从创建和准备它所依赖的对象并将它们插入的工作中解脱出来。这听起来很合理,但有时一个类并不需要所有被插入它的对象来执行它的功能。这背后的原因是“提前返回”发生在无效的用户输入或早期由所需对象之一抛出的异常或在代码块运行之前实例化对象所需的特定值不可用。更多实际例子:注入(inject)一个永远不会被使用的数据库连接对象,因为用户数据没有通过验证(假设没有触发器被用来验证这个数据)注入(inject)类似excel的对象(例如PHPExcel)来收集输入(加载和实例化很繁重,因为整个库被拉入并且从未使用过,因为验证会在写入发生之前抛出异常)在类中确定的变量值,而不是

php - 如何在 Symfony2 中构建项目?

我想问一下,在Symfony2中构建具有前端和后端的项目的最佳方法是什么?在Symfony的其他版本中,这很容易实现,因为您可以创建两个应用程序-前端和后端-然后所有库/模型将在这些应用程序之间共享。现在在Symfony2中,一切都是一个包。我不太清楚的是我如何表示“两个”应用程序,前端和后端。我应该创建两个命名空间——前端和后端吗?我想将我的实体放在一个地方,而不是从两个应用程序访问它们。 最佳答案 只需要一个应用程序,创建一个AdminBundle或BackendBundle或任何适用于您项目的具有后端所需的所有工具的任何东西,

php - Symfony2 - 如何在 Controller 中使用 __construct() 并访问 Securty.Context?

我在使用Symfony2时遇到了一些问题。即如何使用__construct()函数。官方文档非常糟糕!我希望能够使用以下内容:publicfunction__construct(){parent::__construct();$user=$this->get('security.context')->getToken()->getUser();}我怎么会得到以下错误:Fatalerror:Cannotcallconstructorin/Sites/src/DEMO/DemoBundle/Controller/Frontend/HomeController.phponline11第11行

php - Symfony2 : Read Cookie

我在Controller操作中设置了一些cookie,然后在另一个操作中我想读取cookie集并使用该值执行某些操作。但是,当尝试读取cookie时,我看到的只是一个空数组,我的代码如下:publicfunctiontestSetCookieAction(){$value='ABCDEFGHI'$cookie=newCookie('SYMFONY2_TEST',$value,(time()+3600*24*7),'/');$response=newResponse();$response->headers->setCookie($cookie);$response->send();..

php - 在 Symfony2 中,validation.yml 文件可以使用导入拆分成多个文件吗?

现在,我有一个名为validation.yml的文件,其中包含一个文件中所有捆绑实体的验证。验证.ymlBlogger\BlogBundle\Entity\Commentproperties:username:-NotBlank:message:Youmustenteryourname-MaxLength:50comment:-NotBlank:message:Youmustenteracomment-MinLength:50Blogger\BlogBundle\Entity\Enquiry:properties:name:-NotBlank:~email:-Email:message

php - symfony2 fatal error 无法重新声明类

好吧,我已经处理这个问题两个小时了,我看到其他一些人遇到了这个错误,但我似乎无法将他们的原因/解决方案与我的相匹配。fatalerror:require()[function.require]:无法在第55行的/var/www/biztv_symfony/vendor/symfony/src/Symfony/Component/ClassLoader/DebugUniversalClassLoader.php中重新声明类companycontroller终端给出了一个更好的错误消息,将我指向它报告有问题(试图重新声明)的实际类的结束子句。如果我删除或重命名文件companyContro

php - 如何使用 Symfony 2 FormBuilder 在编辑 View 中禁用字段

我使用Symfony2FormBuilder创建了一个表单,我想禁用编辑View中的一个字段。我实际上是用包装器(display:none)隐藏它,但我想知道是否有更好的方法来做到这一点。我的代码如下所示:实体类型publicfunctionbuildForm(FormBuilderInterface$builder,array$options){$builder->add('fieldToDisabledInEditView');//...实体ControllerpublicfunctionnewAction(){$entity=newEntity;$form=$this->crea

php - Symfony 1.4 使用 php 5.5 中已弃用的函数

我最近将PHP从版本5.3.27升级到5.5.0。我的Symfony2.3.2项目一切正常,我可以享受最新的PHP功能。现在当我回到我的另一个Symfony1.4.16项目时,我收到一个PHP错误,关于preg_replace被弃用/e修饰符。我在论坛中找不到关于此错误的引用资料:以前有人遇到过这个问题吗?是否有任何类型的补丁可以开箱即用?升级到Symfony1.4.20会解决这个问题吗?错误信息是这样的:Deprecated:preg_replace():The/emodifierisdeprecated,usepreg_replace_callbackinsteadin/mypro

php - 使用 Symfony2 和 Doctrine2 开发 Multi-Tenancy 应用程序的最佳实践

我正在开发一个需要支持Multi-Tenancy模型的应用程序。我正在使用symfony2php框架和教义2。我不确定构建此需求的最佳方式。Symfony的ACL功能是否提供了解决方案的一部分?您能提供什么建议或想法?是否有任何可用的示例symfony2应用程序或开源应用程序实现了此策略?我的第一个想法是在所有表中使用一个tenant_id列,并将其与应用程序中的帐户对象相关联。我不确定ACL是否应该处理我想要做的事情,或者您是否仍然对针对您的对象的所有查询负责,这样它们就不会返回未经授权的数据。如果我没有使用Doctrine,可能很容易说只需将Wheretenant_id=@acco

php - Symfony2 中 $em->clear() 的未定义索引错误

我编写了一个Symfony命令来从API导入一些数据。它可以工作,但问题是当我在我的数据库中插入一个大JSON时,我的PHP内存使用量会增加。每次导入事件后,我的unitOfWork都会增加“2”。我已经取消了我所有使用过的对象,当你想要做大批量时,我已经阅读了Symfony2的文档:http://www.doctrine-project.org/blog/doctrine2-batch-processing.html但是当我使用$em->clear()我的实体管理器给出了这个错误:Notice:Undefinedindex:000000007b56ea7100000000e366c2