cosavostra/localise-bundle

Symfony localise.biz 库

安装次数: 1,401

依赖项: 0

建议者: 0

安全性: 0

星标: 2

关注者: 1

分支: 0

开放问题: 0

类型:symfony-bundle

v1.2.4 2020-05-11 12:12 UTC

This package is auto-updated.

Last update: 2024-09-11 21:38:35 UTC


README

PHP Symfony 封装 Localise 服务。

安装

确保全局已安装 Composer,如 Composer 文档中的“安装”章节所述。

使用 Symfony Flex 的应用程序

打开命令行,进入项目目录并执行以下命令

$ composer req cosavostra/localise-bundle

不使用 Symfony Flex 的应用程序

步骤 1: 下载 Bundle

打开命令行,进入项目目录并执行以下命令以下载此 Bundle 的最新稳定版本

$ composer req cosavostra/localise-bundle

步骤 2: 启用 Bundle

然后,将 Bundle 添加到项目 config/bundles.php 文件中注册的 Bundle 列表中以启用它

// config/bundles.php

return [
    // ...
    CosaVostra\LocaliseBundle\CosaVostraLocaliseBundle::class => ['all' => true],
];

步骤 3: 设置 API 密钥

最后,通过设置您的 Localise 账户的 API 密钥来更新您的 .env 文件

###> cosavostra/localise-bundle ###
LOCALISE_EXPORT_KEY=XXXXXXXXXXXXXXX
###> cosavostra/localise-bundle ###

用法

此 Bundle 非常有用,可以导入 Localise.biz 的翻译文件。安装后,您将能够访问以下命令

$ php bin/console localise:translation:import --extension=yaml --purge

输出将类似于以下内容

 ----------------- ------ ------------ -------------- 
  Name              Code   Translated   Untranslated  
 ----------------- ------ ------------ -------------- 
  English US        en     3            0             
  French (France)   fr     3            0             
 ----------------- ------ ------------ --------------                                                                                                                
 [OK] The translations was successfully imported.   

注意:运行命令后,不要忘记清除应用程序的缓存,并考虑使用正确的环境选项;在您的生产环境中,您应该运行

注意:以下扩展受支持

  • Yaml
  • PHP
  • XLF
$ php bin/console --env=prod localise:translation:import --extension=yaml --purge

您还可以使用 CosaVostra\LocaliseBundle\LocaliseManager 服务手动导入翻译(例如在控制器中)如下所示

use CosaVostra\LocaliseBundle\LocaliseManager;
use Symfony\Component\HttpFoundation\Response;

public function action(LocaliseManager $localiseManager): Response 
{
    $extension = 'yaml';
    $purge = true; // This flag should be "TRUE" to purge translation directory and remove old files.
    
    $localiseManager->import($extension, $purge);
    
    // Clear the cache manually here ...

    return new Response('Translations imported.');
}

有疑问吗?

如果您有任何问题,请 提交问题

许可

此库在 MIT 许可下发布。有关详细信息,请参阅捆绑的 LICENSE 文件。