📜  Phalcon-多语言支持

📅  最后修改于: 2020-10-21 05:30:34             🧑  作者: Mango


Phalcon包含一个Phalcon \ Translate组件,该组件提供多语言支持,对于创建网页并以多种语言进行翻译非常有帮助。

它包括一个适配器,该适配器有助于绑定阵列并帮助读取翻译消息。

让我们借助Phalcon中的Translate组件来创建输出,这将有助于按照建议的语言显示输出。

步骤1 -Phalcon让每个开发人员都可以自由地组织翻译字符串。考虑保留两个不同的文件,即: en.php (对于英语字符串)和fr.php (对于法语字符串)。

该文件将包含一组键值对,其中键是唯一的,并且值将根据所需的转换而有所不同。

zh.php

 "Good Bye", 
   "hi-name" => "Hello %name%", 
   "song"    => "Your favorite song is %song%", 
]; 

fr.php

 "Au revoir", 
   "hello-name" => "Bonjour %name%", 
   "song"       => "Votre chanson préférée est %song%", 
]; 

步骤2-在应用程序中,创建一个UserController ,它将使用参数来确定应使用哪个文件进行翻译。

 $messagesContent,]); 
   }  
   public function indexAction() { 
      $this->view->name = "Radhika"; 
      $this->view->song= "Ton sourire m'ensorcelle Je suis fou de toi Le désir coule dans mes veines Guidé par ta voix"; 
      $this->view->t    = $this->getMessageTransalation(); 
   } 
}   

对于默认方法,采用两个参数,第一个是名称,第二个是用户喜欢的歌曲。稍后,将函数getMessageTranslation ,该函数将返回所需的输出。

现在,我们需要英语输出。

步骤3-关联的代码视图demo \ app \ views \ User \ index.volt将包含以下代码-

_("hello-name", ["name" => $name]); ?>

_("song", ["song" => $song]); ?>

指数

如果我们希望以法语显示完整的输出,则只需更改文件名。

require "fr.php"; 

以下是法语的输出。

法文输出