2016-11-26 92 views
1

如何设置多种语言以防文本在数组中?cakePHP 3.3国际化

我知道,如果我用这个

<?= __('username')?> 

,并在目录/src/Locale/de_DE/default.po 我已经写了下面的

msgid "username" 
msgstr "benutzer" 

这是不会改变的用户名benutzer如果我将语言设置为de_DE(德语)


但是,如果我有这个,该怎么办

<?= $this->Form->input('password',['label' =>'Password']); ?> 

,我想更改标签密码

回答

2

简单:

$this->Form->input('password', ['label' => __('Password')]); 

的__()函数返回的字符串翻译(more info)。在您的例子中,你使用

<?= ... ?> 

这相当于

<?php echo ... ?> 
+0

没有为__没有真正的了()。从2.0.0开始:) – mark

+0

@mark你说得对,我仍然在维护一些使用'true'参数的CakePHP 1.x项目。更新了答案。 – JvO

+0

这对我有用 –