ホームページ php教程 php手册 Yii Framework 开发教程多国语言示例

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

Jun 13, 2016 am 10:54 AM
framework yii 情報 存在する 成し遂げる 開発する 埋め込む チュートリアル 翻訳する 欲しい 言語 必要

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

 

在合适的位置调用 Yii::t() ;

以 protected/messages/LocaleID/CategoryName.php 的格式创建 PHP 翻译文件。 每个文件简单的返回一个信息翻译数组。 注意,这是假设你使用默认的 CPhpMessageSource 存储翻译信息。

配置 CApplication::sourceLanguage 和 CApplication::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',  

        ),),  

);  

 

 

// 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 文件中定义对应的翻译:

 

 

[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'),  

    );  

}  

 

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'),

);

}

 

 

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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ヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

字幕なしで映画を見ても心配しないでください。 Xiaomi、日本語と韓国語の翻訳のためのリアルタイム字幕Xiaoai Translationの開始を発表 字幕なしで映画を見ても心配しないでください。 Xiaomi、日本語と韓国語の翻訳のためのリアルタイム字幕Xiaoai Translationの開始を発表 Jul 22, 2024 pm 02:11 PM

7月22日のニュースによると、今日、Xiaomi ThePaper OSの公式Weiboは、Xiaoai翻訳が日本語と韓国語の翻訳にアップグレードされ、字幕なしのビデオやライブ会議を文字起こしして翻訳できるようになったと発表しました。リアルタイムで。対面同時通訳では、中国語、英語、日本語、韓国語、ロシア語、ポルトガル語、スペイン語、イタリア語、フランス語、ドイツ語、インドネシア語、ヒンディー語を含む 12 言語への翻訳がサポートされています。上記の機能は現在、次の 3 つの新しい携帯電話のみをサポートしています: Xiaomi MIX Fold 4 Xiaomi MIX Flip Redmi K70 Extreme Edition 2021 年には日本語と韓国語の翻訳に Xiao Ai の AI 字幕が追加される予定であると報告されています。 AI 字幕は、Xiaomi が自社開発した同時通訳技術を使用し、より高速で安定した正確な字幕読み取り体験を提供します。 1. 公式声明によると、Xiaoai Translator はオーディオおよびビデオ会場でのみ使用できるわけではありません

おすすめのAI支援プログラミングツール4選 おすすめのAI支援プログラミングツール4選 Apr 22, 2024 pm 05:34 PM

この AI 支援プログラミング ツールは、急速な AI 開発のこの段階において、多数の有用な AI 支援プログラミング ツールを発掘しました。 AI 支援プログラミング ツールは、開発効率を向上させ、コードの品質を向上させ、バグ率を減らすことができます。これらは、現代のソフトウェア開発プロセスにおける重要なアシスタントです。今日は Dayao が 4 つの AI 支援プログラミング ツールを紹介します (すべて C# 言語をサポートしています)。皆さんのお役に立てれば幸いです。 https://github.com/YSGStudyHards/DotNetGuide1.GitHubCopilotGitHubCopilot は、より少ない労力でより迅速にコードを作成できるようにする AI コーディング アシスタントであり、問​​題解決とコラボレーションにより集中できるようになります。ギット

夏はぜひ虹を撮ってみてください 夏はぜひ虹を撮ってみてください Jul 21, 2024 pm 05:16 PM

夏の雨の後には、美しく魔法のような特別な天気の風景、虹がよく見られます。これも写真撮影ではなかなか出会えない光景で、とてもフォトジェニックです。虹が現れるにはいくつかの条件があります。まず、空気中に十分な水滴があること、そして、低い角度から太陽が当たることです。そのため、雨が上がった午後が最も虹が見えやすいのです。ただし、虹の発生は天候や光などの条件に大きく左右されるため、一般に虹の持続時間は短く、見頃や撮影に最適な時間はさらに短くなります。では、虹に遭遇したとき、どうすれば虹を適切に記録し、高品質の写真を撮ることができるでしょうか? 1. 虹を探す 上記の条件に加えて、虹は通常、太陽光の方向に現れます。つまり、太陽が西から東に輝いている場合、虹は東に現れやすくなります。

WeChat の支払い音をオフにする方法のチュートリアル WeChat の支払い音をオフにする方法のチュートリアル Mar 26, 2024 am 08:30 AM

1. まずWeChatを開きます。 2. 右上隅の[+]をクリックします。 3. QR コードをクリックして支払いを受け取ります。 4. 右上隅にある 3 つの小さな点をクリックします。 5. クリックして支払い到着の音声リマインダーを閉じます。

どのAIプログラマーが一番優れているでしょうか? Devin、Tongyi Lingma、SWE エージェントの可能性を探る どのAIプログラマーが一番優れているでしょうか? Devin、Tongyi Lingma、SWE エージェントの可能性を探る Apr 07, 2024 am 09:10 AM

世界初の AI プログラマー Devin の誕生から 1 か月も経たない 2022 年 3 月 3 日、プリンストン大学の NLP チームはオープンソース AI プログラマー SWE-agent を開発しました。 GPT-4 モデルを利用して、GitHub リポジトリの問題を自動的に解決します。 SWE ベンチ テスト セットにおける SWE エージェントのパフォーマンスは Devin と同様で、平均 93 秒かかり、問題の 12.29% を解決しました。専用端末と対話することで、SWE エージェントはファイルの内容を開いて検索したり、自動構文チェックを使用したり、特定の行を編集したり、テストを作成して実行したりできます。 (注: 上記の内容は元の内容を若干調整したものですが、原文の重要な情報は保持されており、指定された文字数制限を超えていません。) SWE-A

Go 言語を使用してモバイル アプリケーションを開発する方法を学ぶ Go 言語を使用してモバイル アプリケーションを開発する方法を学ぶ Mar 28, 2024 pm 10:00 PM

Go 言語開発モバイル アプリケーション チュートリアル モバイル アプリケーション市場が活況を続ける中、ますます多くの開発者が Go 言語を使用してモバイル アプリケーションを開発する方法を検討し始めています。シンプルで効率的なプログラミング言語として、Go 言語はモバイル アプリケーション開発でも大きな可能性を示しています。この記事では、Go 言語を使用してモバイル アプリケーションを開発する方法を詳しく紹介し、読者がすぐに始めて独自のモバイル アプリケーションの開発を開始できるように、具体的なコード例を添付します。 1. 準備 始める前に、開発環境とツールを準備する必要があります。頭

PHP チュートリアル: int 型を string に変換する方法 PHP チュートリアル: int 型を string に変換する方法 Mar 27, 2024 pm 06:03 PM

PHP チュートリアル: Int 型を文字列に変換する方法 PHP では、整数データを文字列に変換するのが一般的な操作です。このチュートリアルでは、PHP の組み込み関数を使用して int 型を文字列に変換する方法を、具体的なコード例を示しながら紹介します。キャストを使用する: PHP では、キャストを使用して整数データを文字列に変換できます。この方法は非常に簡単で、整数データの前に(文字列)を追加するだけで文字列に変換できます。以下は簡単なサンプルコードです

エージェントの境界の探索: 大規模な言語モデル エージェントのパフォーマンスを包括的に測定および改善するためのモジュール式ベンチマーク フレームワークである AgentQuest エージェントの境界の探索: 大規模な言語モデル エージェントのパフォーマンスを包括的に測定および改善するためのモジュール式ベンチマーク フレームワークである AgentQuest Apr 11, 2024 pm 08:52 PM

大規模モデルの継続的な最適化に基づいて、LLM エージェント - これらの強力なアルゴリズム エンティティは、複雑な複数ステップの推論タスクを解決する可能性を示しています。自然言語処理から深層学習に至るまで、LLM エージェントは徐々に研究や業界の焦点になりつつあります。LLM エージェントは、人間の言語を理解して生成するだけでなく、戦略を策定し、多様な環境でタスクを実行し、API 呼び出しやコーディングを使用して構築することもできます。ソリューション。この文脈において、AgentQuest フレームワークの導入はマイルストーンであり、LLM エージェントの評価と進歩のためのモジュール式ベンチマーク プラットフォームを提供するだけでなく、研究者にこれらのエージェントのパフォーマンスを追跡および改善するための強力なツールも提供します。より細かいレベル

See all articles