草庐IT

symfony-components

全部标签

php - 如何获取 symfony 2.3 中的当前语言环境?

如何在Symfony2.3中获得当前的语言环境?我有一个这样的网址:/{_locale}/blog/article以FR作为默认参数。我尝试以下方法:$this->get('request')->getLocale()但它总是给我默认参数。而且我知道我可以使用$this->get('session')->set('_locale','fr');但问题是,当用户第一次访问我的网站时,他的session中没有存储任何内容。 最佳答案 你可以通过这个获取当前语言环境$request=$this->get('request');echo$r

php - 如何获取 symfony 2.3 中的当前语言环境?

如何在Symfony2.3中获得当前的语言环境?我有一个这样的网址:/{_locale}/blog/article以FR作为默认参数。我尝试以下方法:$this->get('request')->getLocale()但它总是给我默认参数。而且我知道我可以使用$this->get('session')->set('_locale','fr');但问题是,当用户第一次访问我的网站时,他的session中没有存储任何内容。 最佳答案 你可以通过这个获取当前语言环境$request=$this->get('request');echo$r

php - Symfony2 : how to set the host/base url in CLI scripts

我目前正在编写新闻通讯工具,因此必须在通过cron调用的CLI脚本中生成绝对URL。不幸的是,SymfonyCLI命令对我的host/base_url一无所知,因此路由器生成带有错误base_url的绝对URL。它始终使用http://localhost作为基础。有没有办法告诉路由器正确的base_url?我的代码:$this->container->get('router')->generate($route,$parameters,true); 最佳答案 你可以这样做:$host=$this->getContainer()->g

php - Symfony2 : how to set the host/base url in CLI scripts

我目前正在编写新闻通讯工具,因此必须在通过cron调用的CLI脚本中生成绝对URL。不幸的是,SymfonyCLI命令对我的host/base_url一无所知,因此路由器生成带有错误base_url的绝对URL。它始终使用http://localhost作为基础。有没有办法告诉路由器正确的base_url?我的代码:$this->container->get('router')->generate($route,$parameters,true); 最佳答案 你可以这样做:$host=$this->getContainer()->g

php - 使用 XDebug 和 PHPStorm 调试 Symfony2 控制台命令

我应该如何配置PHPStorm,以便在运行控制台命令时可以使用XDebug跟踪我的代码?我知道我的调试配置是正确的,因为我可以调试Web请求并跟踪代码。只要我像这样设置环境变量,我也可以跟踪常规的php命令行脚本:exportXDEBUG_CONFIG="idekey=my-xdebug"但是,我无法跟踪/调试Symfony2控制台命令(那些使用app/consolebundle:console_command运行的命令)。PhpStorm看到连接,但是,它似乎无法找到正在运行的代码。我知道我的文件映射是正确的,因为Web请求可以完美运行。这可能吗? 最佳答

php - 使用 XDebug 和 PHPStorm 调试 Symfony2 控制台命令

我应该如何配置PHPStorm,以便在运行控制台命令时可以使用XDebug跟踪我的代码?我知道我的调试配置是正确的,因为我可以调试Web请求并跟踪代码。只要我像这样设置环境变量,我也可以跟踪常规的php命令行脚本:exportXDEBUG_CONFIG="idekey=my-xdebug"但是,我无法跟踪/调试Symfony2控制台命令(那些使用app/consolebundle:console_command运行的命令)。PhpStorm看到连接,但是,它似乎无法找到正在运行的代码。我知道我的文件映射是正确的,因为Web请求可以完美运行。这可能吗? 最佳答

php - 在 bundle Extension 中获取 Symfony2 环境

在我的Symfony2包扩展中,我的services.yml正在加载$loader=newLoader\YamlFileLoader($container,newFileLocator(__DIR__.'/../Resources/config'));$loader->load('services.yml');但是我想为每个环境加载不同的服务配置(例如:不同的测试环境)。我找到的大多数获取当前环境的示例都是在Controller内访问(例如:$this->get('kernel')->getEnvironment()),但是Controller在扩展中不可能基于访问。根据Twigext

php - 在 bundle Extension 中获取 Symfony2 环境

在我的Symfony2包扩展中,我的services.yml正在加载$loader=newLoader\YamlFileLoader($container,newFileLocator(__DIR__.'/../Resources/config'));$loader->load('services.yml');但是我想为每个环境加载不同的服务配置(例如:不同的测试环境)。我找到的大多数获取当前环境的示例都是在Controller内访问(例如:$this->get('kernel')->getEnvironment()),但是Controller在扩展中不可能基于访问。根据Twigext

php - Symfony2 : Change choices with ajax and validation

场景:我有一个包含2个选择的表单。当用户从第一个选择中选择某些内容时,第二个选择会填充新值。这部分工作正常。但是表单没有得到验证,因为它包含一些初始表单中不允许的选项。表格:category=$category;}publicfunctionbuildForm(FormBuilderInterface$builder,array$options){$builder->add('category','choice',array('choices'=>array('foo'=>'foo','bar'=>'bar'));$builder->add('template','choice',ar

php - Symfony2 : Change choices with ajax and validation

场景:我有一个包含2个选择的表单。当用户从第一个选择中选择某些内容时,第二个选择会填充新值。这部分工作正常。但是表单没有得到验证,因为它包含一些初始表单中不允许的选项。表格:category=$category;}publicfunctionbuildForm(FormBuilderInterface$builder,array$options){$builder->add('category','choice',array('choices'=>array('foo'=>'foo','bar'=>'bar'));$builder->add('template','choice',ar