1. 在 app/conig中建立一个自命名的文件: abc.yml

2. 在 app/config/config.yml中导入abc.yml

文件头部:

imports:
- { resource: parameters.yml }
- { resource: security.yml }
- { resource: abc.yml }

3. 在abc.yml中定义变量:

parameters:
myname: wangyingxi

4. 在代码中便可以使用了:

某action中:

$key = $this->container->getParameter('myname');
return new Response($key);

app.php是程序入口!

$request = Request::createFromGlobals()

$request=$this->getRequest();

$host = $request->getHost();

获取传参:

GET的参数:$request->query->get('aparam')

POST的参数:$request->request->get('bar', 'default value if bar does not exist');

HttpFundation里面的内容具体查看:

http://symfony.com/doc/current/book/http_fundamentals.html

多语言版本实现思路:

1. 在Symfony的route.yml配置

gy_mall_t1:
pattern: /t1
host: www.a.com
defaults: { _controller: GyMallBundle:Default:t1, _locale: global }

gy_mall_t2:
pattern: /t1
host: www.a.cn
defaults: { _controller: GyMallBundle:Default:t1, _locale: cn }

- 分类域名

- 分别传参(locale值)

2. Action部分可以接受到参数

public function t1Action() {

  echo 'current locale is : ' . $this->get('translator')->getLocale();

  // $this->get('translator')->setLocale('fr');

  exit;

}

3. 在/web/.htaccess中添加:

RewriteCond %{HTTP_HOST} ^a\.com
RewriteRule ^(.*)$ http://www.a.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^a\.cn
RewriteRule ^(.*)$ http://www.a.cn/$1 [R=301,L]

如果修改了.htaccess却无效,可以清空浏览器cookie再试试

清空cache,重启apache2

http://segmentfault.com/q/1010000000212748

http://stackoverflow.com/questions/11412476/how-to-translate-language-in-symfony-2-according-to-accept-language-header

http://symfony.com/doc/current/book/translation.html#book-translation-locale-url

(暂无用到下面这篇文章)

http://symfony.com/doc/current/cookbook/session/locale_sticky_session.html

symfon2 配置文件使用 + HttpRequest使用 + Global多语言解决方案的更多相关文章

  1. [转]Asp.Net 网站多语言解决方案

    本文转自:https://www.cnblogs.com/FredTang/archive/2013/01/23/2873231.html 最近领导要求实现PMSWeb应用程序的多区域语言的支持,所以 ...

  2. vivo全球商城全球化演进之路——多语言解决方案

    一.背景 随着经济全球化的深入,许多中国品牌纷纷开始在海外市场开疆扩土.实现全球化意味着你的产品或者应用需要能够在全球各地的语言环境使用,我们在进行海外业务的推进时,需要面对的最大挑战就是多语言问题. ...

  3. WPF应用程序支持多国语言解决方案

    原文:WPF应用程序支持多国语言解决方案 促使程序赢得更多客户的最好.最经济的方法是使之支持多国语言,而不是将潜在的客户群限制为全球近70亿人口中的一小部分.本文介绍四种实现WPF应用程序支持多国语言 ...

  4. 配置文件热加载的go语言实现

    通常我们更新应用程序的配置文件,都需要手动重启程序或手动重新加载配置.假设一组服务部署在10台机器上,你需要借助批量运维工具执行重启命令,而且10台同时重启可能还会造成服务短暂不可用.要是更新配置后, ...

  5. haproxy 配置文件详解 之 global

    配置示例: global log 127.0.0.1 local0 info maxconn user nobody group nobody daemon nbproc pidfile /usr/l ...

  6. c#开发之多国语言解决方案gnu.gettext + poedit

    1.工具简介 1.1.关于i18n i18n其来源是英文单词 internationalization的首末字符i和n,18为中间的字符数是“国际化”的简称. i10n为资源本地化,全称为Locali ...

  7. WPF 多语言解决方案 - Multilingual App Toolkit

    1.首先安装Multilingual App Toolkit   2.新建项目,在VS中点击"工具" -> "Multilingual App Toolkit&qu ...

  8. Spring由于web配置导致的spring配置文件找不到的问题的解决方案

    在把某项技术整合到Spring中的时候,我们时常会发现报如下错误: org.springframework.beans.factory.BeanCreationException: Error cre ...

  9. 多国语言解决方案gnu.gettext + poedit

    1.工具简介 1.1.关于i18n i18n其来源是英文单词 internationalization的首末字符i和n,18为中间的字符数是“国际化”的简称. i10n为资源本地化,全称为Locali ...

随机推荐

  1. Android学习之——自己搭建Http框架(1)

    一.前言         近期学习http框架.         眼下写的这个框架临时仅仅适用于学习之用,实际用于项目之中还须要不断的优化.         要从server或者网络获取数据.显示到U ...

  2. 封装php redis缓存操作类

    封装php redis缓存操作类,集成了连接redis并判断连接是否成功,redis数据库选择,检测redis键是否存在,获取值,写入值,设置生存时间和删除清空操作. php redis类代码: &l ...

  3. jenkins自动部署到tomcat报错:ERROR: Publisher hudson.plugins.deploy.DeployPublisher aborted due to exception

    参考地址: http://blog.csdn.net/weiguang1017/article/details/9011353 manager-script — Access to the tools ...

  4. Windows7系统下OpenCV2.4.4+PCL1.6.0+SSBA3.0+VS2010 IDE32环境下编译和安装以实现Sfm和PCL点云数据可视化

    最近在学习<深入理解OpenCV:实用计算机视觉项目解析>一书的第三章和第四章时,遇到很多编译问题,书中又没有详细的讲解环境配置和搭建过程.经过多天的捉摸.调试.排错终于将两章的程序都调试 ...

  5. opencv 显示摄像头数据

    本文章是一个小例子,主要是在ubuntu 系统中利用Opencv 显示摄像头的数据 ,显示到对话框中. 1.建立一个  main.cpp #include<opencv2/core/core.h ...

  6. Failed to fetch URL https://dl-ssl.google.com/android/repository/addons_list-2.xml

    解决方法来源:http://www.cnblogs.com/kaka-bing/archive/2012/10/31/2747490.html 问题描述: 使用Android SDK Manager检 ...

  7. P2157 [SDOI2009]学校食堂Dining

    题目描述 小F 的学校在城市的一个偏僻角落,所有学生都只好在学校吃饭.学校有一个食堂,虽然简陋,但食堂大厨总能做出让同学们满意的菜肴.当然,不同的人口味也不一定相同,但每个人的口味都可以用一个非负整数 ...

  8. tomcat-在eclipse中配置tomcat容器的内存

    eclipse下的tomcat内存设置大小 在eclipse中设置: 设置步骤如下: 1.点击eclipse上的debug图标旁边的下拉箭头 2.然后选择Run Configurations, 3.系 ...

  9. Git与TortoiseGit基本操作

    Git与TortoiseGit基本操作 1. GitHub操作 本节先简单介绍 git 的使用与操作, 然后再介绍 TortoiseGit 的使用与操作. 先看看SVN的操作吧, 最常见的是 检出(C ...

  10. Metasploit简单应用

    什么是Metasploit Metasploit是一款开源的安全漏洞检测工具. 它可以帮助用户识别安全问题,验证漏洞的缓解措施,并对某些软件进行安全性评估,提供真正的安全风险情报.当我们第一次接触Me ...