crodas/intl

PHP 的简单国际化支持

dev-master 2014-08-29 15:03 UTC

This package is auto-updated.

Last update: 2024-09-12 18:26:20 UTC


README

PHP 的简单国际化支持

它旨在成为 gettext 的替代品。

设置

可以通过 composer 安装

composer require crodas/intl:dev-master

概念

crodas/intl 在运行时提供了一些函数 (__, _e_ 如果未安装 gettext) 来翻译文本。它还提供了一个 生成器,遍历整个项目并提取它所能找到的所有 文本,并生成一个 模板 文件。

需要将此 模板 复制以创建新的 本地化语言。您可以多次运行此过程,模板 文件和 所有 locale 文件都将更新(但我们永远不会覆盖其内容)。

每当您更新本地化文件时,您需要将其 编译,以便从您的 PHP 应用程序中有效地加载。

待办事项: 添加演示

使用

为了使用 crodas/intl,需要按照以下方式初始化

require "vendor/autoload.php";

crodas\Intl::init("/tmp/language.php", $locale);

它接受两个参数,第一个是编译后的本地化,第二个是要使用的语言。

您可以在任何时候通过执行以下操作来切换到另一个本地化

crodas\Intl::setLanguage($locale);

然后您可以通过调用 __("Hello")__("Hello %s, welcome"),它们将被正确的本地化或默认内容替换,如果您找不到本地化文件或要翻译的句子,则类似于 gettext 的工作方式。