목차
YII Framework框架教程之国际化实现方法,yiiframework
您可能感兴趣的文章:
php教程 php手册 YII Framework框架教程之国际化实现方法,yiiframework

YII Framework框架教程之国际化实现方法,yiiframework

Jun 13, 2016 am 08:44 AM
framework yii 국제화

YII Framework框架教程之国际化实现方法,yiiframework

本文讲述了YII Framework框架教程之国际化实现方法。分享给大家供大家参考,具体如下:

一个web应用,发布到互联网,就是面向全球用户。用户在世界的各个角落都可以访问到你的web应用,当然要看你的网站和不和谐,不和谐的web应用在和谐社会是不让你访问的。

YII提供了国际化的支持,可以让我们创建的应用适合不同语言的人群。

国际化是一个很花哨的东西,没有哪个大型的网站真正能做到国际化。大多都是针对不懂的语言,不同地区设计不同的网站。如果你的应用相对较小,处理的东西不多,那么国际化起来的东西还是蛮可以的。

国际化从以下几个方面入手:

区域设置

信息文本和文件资源的翻译

日期/时间、货币符号和数字格式

YII中国际化涉及到的类在/yii_dev/yii/framework/i18n目录下面:

/yii_dev/yii/framework/i18n# tree
.
├── CChoiceFormat.php
├── CDateFormatter.php
├── CDbMessageSource.php
├── CGettextMessageSource.php
├── CLocale.php
├── CMessageSource.php
├── CNumberFormatter.php
├── CPhpMessageSource.php
├── data
│   ├── en_us.php
│   ├── ....................
│   ├── zh_hk.php
│   ├── zh_mo.php
│   ├── zh.php
│   ├── zh_sg.php
│   ├── zh_tw.php
│   ├── zu.php
│   └── zu_za.php
└── gettext
    ├── CGettextFile.php
    ├── CGettextMoFile.php
    └── CGettextPoFile.php

2 directories, 616 files

区域设置

通过对区域的设置,来判断用户所在的国际和使用的语言。

YII定义了常见的区域标识,可以认为是表示区域的唯一ID。

YII中通过CLocale类存放区域数据(包括货币,日期,数字格式等等)。

通过一个区域唯一ID,然后就可以通过 CLocale::getInstance($localeID) 或者CApplication::getLocale($localeID) 获取相应的 CLocale 实例。通过CLocale实例,就能够判断用户所在的国家,使用的语言。然后可以根据CLocale的数据进行相应的翻译,让web应用更适于当前用户使用和阅读。最根本的就是为了用户进行特定的翻译。

信息文本和文件资源的翻译

翻译很简单就是把一种语言变成另一种语言。在计算机中用的是26字母,就是e文。所以可以把e文当成是原始语言,万语之源,所有其他的语言都是通过e文翻译而成的,暂且e文叫做源语言。翻译成的语言叫做目标语言。

具体的类说明

/**
* Translates a message to the specified language.
* Starting from version 1.0.2, this method supports choice format (see {@link CChoiceFormat}),
* i.e., the message returned will be chosen from a few candidates according to the given
* number value. This feature is mainly used to solve plural format issue in case
* a message has different plural forms in some languages.
* @param string $category message category. Please use only word letters. Note, category 'yii' is
* reserved for Yii framework core code use. See {@link CPhpMessageSource} for
* more interpretation about message category.
* @param string $message the original message
* @param array $params parameters to be applied to the message using <code>strtr</code>.
* Starting from version 1.0.2, the first parameter can be a number without key.
* And in this case, the method will call {@link CChoiceFormat::format} to choose
* an appropriate message translation.
* Starting from version 1.1.6 you can pass parameter for {@link CChoiceFormat::format}
* or plural forms format without wrapping it with array.
* @param string $source which message source application component to use.
* Defaults to null, meaning using 'coreMessages' for messages belonging to
* the 'yii' category and using 'messages' for the rest messages.
* @param string $language the target language. If null (default), the {@link CApplication::getLanguage application language} will be used.
* This parameter has been available since version 1.0.3.
* @return string the translated message
* @see CMessageSource
*/
public static function t($category,$message,$params=array(),$source=null,$language=null)
{

로그인 후 복사

$category源语言
$mesage目标语言
$params是$mesage中要匹配翻译的数组。

具体使用方法如:

Yii::t('app', 'Path alias "{alias}" is redefined.',
  array('{alias}'=>$alias))

로그인 후 복사

当然可以通过yiic提供的命令行命令message进行翻译,具体的参考yiic命令的使用说明

日期/时间、金钱和数字格式

日期/时间处理CDateFormatter类
具体参考(/yii_dev/yii/framework/i18n/CDateFormatter.php)类文件

数字处理
具体参考(/yii_dev/yii/framework/i18n/CNumberFormatter.php)类文件

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

您可能感兴趣的文章:

  • PHP YII框架开发小技巧之模型(models)中rules自定义验证规则
  • Nginx配置PHP的Yii与CakePHP框架的rewrite规则示例
  • 使用Composer安装Yii框架的方法
  • Yii使用migrate命令执行sql语句的方法
  • YII Framework框架使用YIIC快速创建YII应用之migrate用法实例详解
  • YII Framework框架教程之使用YIIC快速创建YII应用详解
  • YII Framework框架教程之缓存用法详解
  • YII Framework框架教程之安全方案详解
  • YII Framework框架教程之日志用法详解
  • YII Framework教程之异常处理详解
  • Yii rules常用规则示例
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Gin 프레임워크를 사용하여 국제화 및 다국어 지원 기능 구현 Gin 프레임워크를 사용하여 국제화 및 다국어 지원 기능 구현 Jun 23, 2023 am 11:07 AM

세계화가 발전하고 인터넷이 대중화됨에 따라 점점 더 많은 웹사이트와 애플리케이션이 다양한 집단의 요구를 충족시키기 위해 국제화 및 다국어 지원 기능을 달성하기 위해 노력하기 시작했습니다. 이러한 기능을 실현하려면 개발자는 몇 가지 고급 기술과 프레임워크를 사용해야 합니다. 이 기사에서는 Gin 프레임워크를 사용하여 국제화 및 다국어 지원 기능을 구현하는 방법을 소개합니다. Gin 프레임워크는 Go 언어로 작성된 경량 웹 프레임워크입니다. 효율적이고 사용하기 쉽고 유연하며 많은 개발자가 선호하는 프레임워크가 되었습니다. 게다가,

FastAPI 프레임워크를 사용하여 국제적인 웹 애플리케이션 구축 FastAPI 프레임워크를 사용하여 국제적인 웹 애플리케이션 구축 Sep 29, 2023 pm 03:53 PM

FastAPI 프레임워크를 사용하여 국제적인 웹 애플리케이션을 구축하세요. FastAPI는 Python 유형 주석과 고성능 비동기 지원을 결합하여 웹 애플리케이션 개발을 더욱 간단하고 빠르며 안정적으로 만드는 고성능 Python 웹 프레임워크입니다. 국제적인 웹 애플리케이션을 구축할 때 FastAPI는 애플리케이션이 여러 언어를 쉽게 지원할 수 있도록 하는 편리한 도구와 개념을 제공합니다. 아래에서는 FastAPI 프레임워크를 사용하여 빌드하는 방법을 소개하는 구체적인 코드 예제를 제공합니다.

PHP로 다국어 웹사이트 구축: 언어 장벽 제거 PHP로 다국어 웹사이트 구축: 언어 장벽 제거 Feb 19, 2024 pm 07:10 PM

1. 다음 필드를 포함하여 다국어 데이터에 대한 새 테이블을 생성하기 위한 데이터베이스를 준비합니다. CREATETABLEtranslations(idINTNOTNULLAUTO_INCREMENT,localeVARCHAR(255)NOTNULL,keyVARCHAR(255)NOTNULL,valueTEXTNOTNULL,PRIMARYKEY(id)). 웹사이트 상단이나 사이드바에 언어 전환기를 추가하면 사용자가 선호하는 언어를 선택할 수 있습니다. //현재 언어를 가져옵니다. $current_locale=isset($_GET["locale"])?$_

국제화 및 다국어 지원을 달성하기 위해 Webman 프레임워크를 사용하는 방법은 무엇입니까? 국제화 및 다국어 지원을 달성하기 위해 Webman 프레임워크를 사용하는 방법은 무엇입니까? Jul 09, 2023 pm 03:51 PM

오늘날 인터넷 기술의 지속적인 발전으로 인해 점점 더 많은 웹사이트와 애플리케이션이 다국어 및 국제화를 지원해야 합니다. 웹 개발에서 프레임워크를 사용하면 개발 프로세스를 크게 단순화할 수 있습니다. 이 기사에서는 Webman 프레임워크를 사용하여 국제화 및 다중 언어 지원을 달성하는 방법을 소개하고 몇 가지 코드 예제를 제공합니다. 1. Webman 프레임워크란 무엇입니까? Webman은 웹 애플리케이션 개발을 위한 풍부한 기능과 사용하기 쉬운 도구를 제공하는 경량 PHP 기반 프레임워크입니다. 그 중 하나가 국제화와 다중화이다.

PHP 개발 시 다중 언어 및 국제화 문제를 처리하는 방법 PHP 개발 시 다중 언어 및 국제화 문제를 처리하는 방법 Oct 09, 2023 pm 04:24 PM

PHP 개발에서 다국어 및 국제화 문제를 처리하려면 구체적인 코드 예제가 필요합니다. 인터넷의 발전으로 인해 다국어 및 국제화에 대한 사람들의 요구가 점점 더 높아지고 있습니다. PHP 개발에 있어서 다국어 문제와 국제화 문제를 어떻게 효과적으로 처리하는가는 개발자가 해결해야 할 중요한 과제가 되었습니다. 문자 인코딩 처리 PHP 개발에서는 먼저 문자 인코딩이 올바르게 처리되는지 확인해야 합니다. 다중 언어 환경에서는 UTF-8 인코딩을 사용하는 것이 가장 일반적인 선택입니다. PHP 파일의 헤드에 다음 코드를 추가할 수 있습니다: header('C

Vue에서 국제 다국어 전환을 구현하기 위해 라우팅을 사용하는 방법은 무엇입니까? Vue에서 국제 다국어 전환을 구현하기 위해 라우팅을 사용하는 방법은 무엇입니까? Jul 22, 2023 pm 12:17 PM

Vue에서 국제 다국어 전환을 구현하기 위해 라우팅을 사용하는 방법은 무엇입니까? 다국어 웹사이트를 개발할 때 중요한 요구 사항 중 하나는 사용자가 선택한 언어에 따라 웹사이트 콘텐츠를 전환할 수 있어야 한다는 것입니다. Vue.js는 널리 사용되는 JavaScript 프레임워크입니다. VueRouter 플러그인을 사용하면 라우팅 기능을 쉽게 구현할 수 있습니다. 이 기사에서는 라우팅을 사용하여 Vue에서 국제 다국어 전환을 구현하는 방법을 소개합니다. 먼저 VueRouter 플러그인을 설치해야 합니다. np를 전달할 수 있음

PHP 프레임워크 Yii를 사용하여 고가용성 클라우드 백업 시스템을 개발하는 방법 PHP 프레임워크 Yii를 사용하여 고가용성 클라우드 백업 시스템을 개발하는 방법 Jun 27, 2023 am 09:04 AM

클라우드 컴퓨팅 기술이 지속적으로 발전하면서 데이터 백업은 모든 기업이 반드시 해야 할 일이 되었습니다. 이러한 맥락에서 가용성이 높은 클라우드 백업 시스템을 개발하는 것이 특히 중요합니다. PHP 프레임워크 Yii는 개발자가 고성능 웹 애플리케이션을 빠르게 구축하는 데 도움이 되는 강력한 프레임워크입니다. 다음은 Yii 프레임워크를 사용하여 고가용성 클라우드 백업 시스템을 개발하는 방법을 소개합니다. 데이터베이스 모델 설계 Yii 프레임워크에서 데이터베이스 모델은 매우 중요한 부분입니다. 데이터 백업 시스템에는 많은 테이블과 관계가 필요하기 때문에

국제화 지원을 위해 Hyperf 프레임워크를 사용하는 방법 국제화 지원을 위해 Hyperf 프레임워크를 사용하는 방법 Oct 22, 2023 am 08:14 AM

국제 지원을 위해 Hyperf 프레임워크를 사용하는 방법 세계화가 급속히 발전함에 따라 많은 응용 프로그램은 다양한 국가 및 지역의 사용자 요구를 충족하기 위해 다중 언어 지원 기능을 갖추어야 합니다. 경량의 고성능 프레임워크인 Hyperf 프레임워크는 국제 지원 기능을 제공하며 개발자가 다국어 응용 프로그램을 빠르게 개발하는 데 도움을 줄 수 있습니다. 이 기사에서는 Hyperf 프레임워크에서 국제화 기능을 사용하는 방법을 소개하고 해당 코드 예제를 제공합니다. 1. 다중 언어 지원을 구성하려면 먼저 Hyperf 구성 파일을 구성해야 합니다.

See all articles