kaishiyoku/yaml-translation

此包已废弃,不再维护。未建议替代包。

为Laravel TranslationServiceProvider添加YAML文件支持

6.0.0 2019-11-27 18:50 UTC

This package is auto-updated.

Last update: 2020-02-25 12:59:48 UTC


README

Maintenance Packagist Packagist

为Laravel >=5.4 TranslationServiceProvider添加YAML文件支持

此包使用Symfony/Yaml解析器。注意:这是从Devitek原始版本分叉而来的:https://github.com/Devitek/laravel-yaml-translation

请注意

Laravel >=5.4仅支持即将发布的 >=5.4.* 版本。如果您仍想使用旧版本的Laravel,请使用旧版本。

支持Laravel <= 5.3.*的最后一个版本是 5.0.1

请注意:与版本5.5.1一样,此包使用Symfony Yaml Parser v3.*,因此YAML格式已略有变化 - 当存在如冒号等特殊键时,您现在必须使用引号(双引号或单引号)转义行,否则您将得到如下错误: A colon cannot be used in an unquoted mapping value at line [...]。我已经稍微修改了下面的示例以展示更改。

安装

运行php composer.phar require kaishiyoku/yaml-translation"kaishiyoku/yaml-translation": "5.*"添加到您的composer.json中。

在Laravel中添加支持

app/config/app.php中将'Illuminate\Translation\TranslationServiceProvider',替换为'Kaishiyoku\Core\Translation\TranslationServiceProvider',

如何使用

只需使用常规的php文件或使用ymlyaml文件。为了使用YAML,您的本地化文件必须以*.yml.php*.yaml.php*.yml*.yaml结尾。

示例

PHP:

<?php

return [
  'hello' => 'Hello :name',
  'author' => 'Kaishiyoku',
  'messages' => [
    'none' => 'No messages'
  ]
];

将与以下等效

YAML:

hello: 'Hello :name' # must now be escaped with quotes
author: Kaishiyoku
messages:
  none: 'No messages'

请注意:Symfony Yaml解析器期望使用<space>缩进,使用<tab>缩进将导致异常。

如果您有任何问题,请随时打开一个工单:)

作者

Twitter: @kaishiyoku
网站: www.andreas-wiedel.de