`
lyunabc
  • 浏览: 553758 次
  • 性别: Icon_minigender_2
社区版块
存档分类
最新评论

Yii Framework 开发教程(48) 多国语言示例

 
阅读更多

本例通过Yii Framework 开发教程(11) UI 组件 ActiveForm示例添加中文支持简要说明一下多国语言支持。详细文档可可以参考Yii文档

信息翻译是通过调用Yii::t()实现的。此方法会将信息从源语言翻译为目标语言

总体来说,要实现信息翻译,需要执行如下几步:

  1. 在合适的位置调用Yii::t()
  2. protected/messages/LocaleID/CategoryName.php的格式创建 PHP 翻译文件。 每个文件简单的返回一个信息翻译数组。 注意,这是假设你使用默认的CPhpMessageSource存储翻译信息。
  3. 配置CApplication::sourceLanguageCApplication::language

因此第一步为Application添加合适的配置:

<?php

// This is the main Web application configuration. Any writable
// CWebApplication properties can be configured here.
return array(
'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
'sourceLanguage'=>'en',
'language'=>'zh_cn',
'name'=>'i18nDemo',

...
// application components
'components'=>array(
'coreMessages'=>array(
		'basePath'=>'protected/messages',
		),),
);

源语言为en,目录语言为中文(zh_cn) ,翻译信息的目录为protected/messages.

然后再protected/messages 创建zh_cn 目录,如果还需要支持其它语言,可以创建相应的目录,然后在zh_cn创建一个yii.php ,其中yii 做为翻译时的分类名(你可以选择你自己喜欢的名字)。
检查代码中需要翻译的地方,然后在yii.php 文件中定义对应的翻译:

return array (

	'Application Name' => '应用程序名称',
	'Greetings from Santa'=>'来自圣诞老人的问候',
	'firstName'=>'名',
	'lastName'=>'姓',
	'Choose your Christmas Gift'=>'选择你喜欢的圣诞礼物',
	'iPad'=>'iPad',
	'Remote control helicopter'=>'遥控直升飞机',
	'60 inch 3D LED TV'=>'60寸3D LED电视',
	'Holy Bible'=>'圣经',
	'Choose your Christmas dinner'=>'选择你圣诞节晚餐',
	'Egg'=>'鸡蛋',
	'Ham'=>'火腿',
	'Chicken'=>'鸡',
	'Pork'=>'猪肉',
	'Beer'=>'啤酒',
	'Coke'=>'可乐',
	'Wine'=>'白酒',
	'Submit'=>'提交',
	'Merry Christmas'=>'圣诞快乐',
	'On Christmas Day,You will be given'=>'圣诞节那天你将获得',
	'And you will have'=>'你可以有',
	'for Christmas dinner'=>'作为圣诞晚餐',
	'Start Again'=>'重新选择'
);
1

然后将原先使用英文字符串的地方换成yii::t('yii',xxx);比如DataModel.php
1
public function getGifts()
{
	return array(
		'1'=>Yii::t('yii','iPad'),
		'2'=>Yii::t('yii','Remote control helicopter'),
		'3'=>Yii::t('yii','60 inch 3D LED TV'),
		'4'=>Yii::t('yii','Holy Bible'),
		);
}

public function getMeals()
{
	return array(
		'1'=>Yii::t('yii','Egg'),
		'2'=>Yii::t('yii','Ham'),
		'3'=>Yii::t('yii','Chicken'),
		'4'=>Yii::t('yii','Pork'),
		'5'=>Yii::t('yii','Beer'),
		'6'=>Yii::t('yii','Coke'),
		'7'=>Yii::t('yii','Wine'),
	);
}

201212129020本例下载


分享到:
评论

相关推荐

    YII Framework框架教程之使用YIIC快速创建YII应用详解

    主要介绍了YII Framework框架教程之使用YIIC快速创建YII应用的方法,详细分析说明了YII Framework框架使用YIIC命令行创建应用的相关技巧与注意事项,需要的朋友可以参考下

    Yii Framework API手册

    Yii Framework API手册是针对开发者的一款详尽参考资料,它包含了Yii框架的所有核心组件、类库以及扩展的使用方法和接口信息。Yii是一个高性能、基于组件的PHP框架,用于开发Web 2.0应用。API(Application ...

    yii framework框架 + yii app模板(基本、高级).zip

    yii framework框架 + yii app模板(基本、高级)

    YII Framework框架教程之日志用法详解

    YII Framework是一个基于PHP的高级Web应用开发框架,它提供了一套日志系统,以便开发者追踪和记录应用程序运行时的状态和潜在问题。本文将详细介绍YII中日志的配置、使用方法及相关注意事项,通过实例阐述如何在YII...

    Yii Framework 2.0 权威指南 pdf格式 中文高清离线版 有书签

    ### Yii Framework 2.0 权威指南知识点详解 #### 一、Yii框架概述 - **定义**:Yii是一款高效能、基于组件的PHP框架,主要用于加速现代Web应用的开发进程。其名称“Yii”(发音类似于“易”)在中国文化中有“极致...

    YII Framework框架教程之缓存用法详解

    首先,Yii框架的缓存是通过组件方式定义的,位于/yii_dev/yii/framework/caching目录下。该目录包括了多种缓存组件实现,例如CApcCache、CCache、CDbCache等,它们分别对应不同的缓存存储媒介,如APC、文件、数据库...

    yii framework 中文完全手册

    9. **国际化和本地化**:Yii支持多语言,可以方便地进行应用的国际化和本地化。 10. **命令行工具**:Yii的 yiic 命令行工具,用于生成代码、执行数据库迁移、缓存清理等任务,提高了开发效率。 总之,“yii ...

    Yii Framework 1.1.6

    Yii Framework 1.1.6 是一个高效、可扩展的 PHP 开发框架,它为开发者提供了构建大型Web应用所需的工具和功能。这个版本是Yii框架的稳定版本之一,发布于2011年,旨在提高开发效率并降低维护成本。 在Yii 1.1.6中,...

    Yii Framework v2.0.8.rar

    Yii Framework是一个高性能的PHP5的web应用程序开发框架。通过一个简单的命令行工具 yiic 可以快速创建一个web应用程序的代码框架,开发者可以在生成的代码框架基础上添加业务逻辑,以快速完成应用程序的开发。

    Yii Framework框架开发微信公众平台示例

    主要介绍了Yii Framework框架开发微信公众平台,结合实例形式分析了使用Yii Framework框架开发微信公众平台相关原理、功能代码与实现技巧,需要的朋友可以参考下

    Yii Framework v1.1.19

    Yii是一个高性能的PHP5的web应用程序开发框架。通过一个简单的命令行工具 yiic 可以快速创建一个web应用程序的代码框架,开发者可以在生成的代码框架基础上添加业务逻辑,以快速完成应用程序的开发。

    yii framework 1.1.14 chm文档

    yii framework 1.1.14 chm文档,从官方html文档编译,展示效果很好.

    Yii Framework v1.10 Class Reference

    Yii Framework 1.10的API手册

    Yii Framework框架中事件和行为的区别及应用实例分析

    主要介绍了Yii Framework框架中事件和行为的区别及应用,结合实例形式分析了Yii Framework框架中事件和行为的相关概念、原理、区别及应用操作技巧,需要的朋友可以参考下

    PHP实例开发源码-Yii Framework php框架.zip

    PHP实例开发源码—Yii Framework php框架.zip PHP实例开发源码—Yii Framework php框架.zip PHP实例开发源码—Yii Framework php框架.zip

    Yii2.0打造京东商城平台PHP电商实战Yii2.0视频教程

    教程名称:Yii2.0 打造京东商城平台 PHP电商实战 Yii2.0视频教程 教程内容: 包含了电商的所有功能模块:商品展示、购物车功能、下单支付、发货、确认收获、商品管理、订单管理。电商API接口开发。Yii2.0级基于Yii...

    PhpStorm6 创建yii framework项目

    在本篇文档中,我们将深入了解如何使用PhpStorm6这款集成开发环境(IDE)来创建基于Yii框架的项目。Yii框架是一个高性能的现代PHP框架,适用于开发Web 2.0应用程序。PhpStorm6是由JetBrains公司开发的一个专门为PHP...

Global site tag (gtag.js) - Google Analytics