alex-kalanis / kw_langs
用于访问KWCMS中翻译的Langs
v2.0.0
2024-04-08 23:56 UTC
Requires
- php: >=7.4.0
- alex-kalanis/kw_paths: >=4.0 <5
- alex-kalanis/kw_routed_paths: >=3.0 <4
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- phpstan/phpstan: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: >=8.0 <=9
- shipmonk/composer-dependency-analyser: ^1.4
README
在KWCMS树中定义使用的翻译。解析它们并返回。
PHP安装
composer.phar require alex-kalanis/kw_langs
(如果您不熟悉composer,请参阅 Composer文档)
包信息
此包包含来自KWCMS引导程序的示例文件。将其用作参考。
此语言引导程序与KWCMS模块相关联。在KWCMS之外使用它意味着您需要了解模块系统的树结构以及在那里定位语言。
这个想法是关于仅通过其键(在单个命名空间中)分离的翻译。
基本语言文件本身是一个简单的PHP文件,其中定义了一个名为"$lang"的数组变量,其中存储了类似于正常PHP数组中的键值对。您不需要指定模块 - 当语言加载时,它将自动设置为内容数组。
您还可以使用自己的加载器来读取您的翻译文件,根据您的规则。因此,您可以连接读取来自get_text模块文件的翻译,所有这些都将以相同的方式表现。只是需要尊重加载器的输入是模块和语言名称,输出是键值对数组,该数组将设置到翻译数组中。注意!之前设置的翻译可能会被覆盖!
对于您自己的模块以及保持事物分离,我建议将语言键的形式为 "{module_name}.{key_itself}" - 以点作为分隔符,模块名称作为前缀。
示例
对于 ['your internal system key' => 'output is %s, on %d']
print \kalanis\kw_langs\Lang::get('your internal system key', 'first param', 2);
它返回 'output is first param, on 2'
最佳用法是在其他模块的翻译类中内部使用 - 您只需用您的键填充 Lang::get()
中的翻译即可。您可以创建一个完整的类,该类返回所需的翻译,该类是 ILang
的实例,然后将它传递给语言加载器。