未加星标

symfony使用 Translation Component自定义输出文本【原创】

字体大小 | |
[开发(php) 所属分类 开发(php) | 发布者 店小二04 | 时间 2017 | 作者 红领巾 ] 0人收藏点击收藏

Translation Component 是symfony社区的一个第三方包,用于自定义不同语言环境下后台的返回数据的处理,想到的比较常用的功能应该就是中英文网站的内容切换。

安装方法

composer require symfony/translation

symfony官方文档地址 https://symfony.com/doc/2.8/components/translation.html 从文档中可以看到自定义语言文件的格式上有很大的自由性,可以在多种情况下适用。下面为测试代码

omposer require symfony/translation

public function indexAction()
{
$translator = new Translator('ch_CN', new MessageSelector());
$translator->addLoader('array', new ArrayLoader());
$translator->addLoader('json', new JsonFileLoader());
$translator->addResource('json', $this->rootDir . "/app/data/" . "trans.json", 'ch_CN');
$translator->addResource('array', array('%left% test %right%' => '%left% 测试 %right%','%left% home %right%' => '%left% 首页 %right%',
), 'ch_CN');
$translated = $translator->trans('%left% test %right%',array('%right%' => '翻译', '%left%' => '结束')
);
var_dump($translated);
}

上面的输出则为 “结束 测试 翻译” 可以看出这一方法可以对文本中某一字段进行自定义的翻译替换,

$translator->addResource('json', $this->rootDir . "/app/data/" . "trans.json", 'ch_CN');

这句代码为在ch_CN中加载trans.json文件的语言配置,其中json中为数组形式的数据,用于定义定义自定义文本内容,区域设置大致指用户的语言和国家/地区。它可以是您的应用程序用于管理翻译和其他格式(例如货币格式)的任何字符串。建议使用 ISO 639-1 语言代码,下划线(_),然后使用 3166-1 alpha-2 国家代码(例如ch_CN)。

当然目前说明的只是此第三方bundle的冰山一角,具体使用方法参考 官方文档 里面都有具体的方法

本文永久地址:http://blog.it985.com/19683.html

本文出自IT985博客 ,转载时请注明出处及相应链接。

本文开发(php)相关术语:php代码审计工具 php开发工程师 移动开发者大会 移动互联网开发 web开发工程师 软件开发流程 软件开发工程师

主题: 数据博客
分页:12
转载请注明
本文标题:symfony使用 Translation Component自定义输出文本【原创】
本站链接:http://www.codesec.net/view/533099.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 开发(php) | 评论(0) | 阅读(41)