Yii2:如何批量提取Yii::t()消息进行本地化?

Yii2:如何批量提取Yii::t()消息进行本地化?,yii2,localization,internationalization,Yii2,Localization,Internationalization,我的应用程序中有很多Yii::t()命令。现在我需要以某种方式提取它们,但我不想手动执行此操作。如何轻松提取所有这些命令?我必须用正则表达式吗 我已经读过了,但它没有说明这方面的任何内容。Yii2已经提供了一些东西来帮助您解决这个问题。您可以将控制台与两个yii命令一起使用: message/config:使用第一个命令创建配置文件 message/extract:第二秒钟,您将根据配置文件提取Yii:t()消息 默认情况下(配置文件的一部分),所有消息都将保存到您之前必须创建的@app/m

我的应用程序中有很多Yii::t()命令。现在我需要以某种方式提取它们,但我不想手动执行此操作。如何轻松提取所有这些命令?我必须用正则表达式吗


我已经读过了,但它没有说明这方面的任何内容。

Yii2已经提供了一些东西来帮助您解决这个问题。您可以将控制台与两个yii命令一起使用:

  • message/config
    :使用第一个命令创建配置文件
  • message/extract
    :第二秒钟,您将根据配置文件提取
    Yii:t()
    消息
默认情况下(配置文件的一部分),所有消息都将保存到您之前必须创建的@app/messages目录中。这些文件将包含翻译所需的带有空字符串值的php数组。这些文件将按
Yii::t('category','message')
命令中使用的类别命名,并放置到指定语言代码的子目录中

所有这些都记录在yii命令中。在控制台中键入
/yii帮助信息
。配置文件本身还包括文档

提示:不要忘记在配置中排除供应商目录,否则也会提取Yii框架消息

顺便说一句:这些命令不需要通常存储在
web.php
console.php
文件中的i18n配置。不过,对于使用本地化消息,您当然必须定义它


指南中现在提供了一些信息。

Yii 1.x有类似的信息吗?我找到了。谢谢分享@M先生,如果你在网上找到了资源,你可以在这里提供链接。这是一个很好的资源: