Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 配置文件中的Laravel字符串本地化_Php_Laravel_Model View Controller_Laravel 5_Laravel 5.1 - Fatal编程技术网

Php 配置文件中的Laravel字符串本地化

Php 配置文件中的Laravel字符串本地化,php,laravel,model-view-controller,laravel-5,laravel-5.1,Php,Laravel,Model View Controller,Laravel 5,Laravel 5.1,我在配置文件中使用trans()函数时遇到问题,我觉得不应该这样使用它。但是,我不知道什么是转换配置文件(位于/config文件夹中的文件)中的字符串文本的最有效方法 原始代码 <?php return [ 'daily' => 'Daily' ]; 配置文件是Laravel初始化的第一个文件之一,这意味着您不能在配置文件中使用转换器或UrlGenerator 我不知道您想做什么,但是您不需要在配置文件中使用Translator,尽管…您不能在Laravel配置文件中使用

我在配置文件中使用trans()函数时遇到问题,我觉得不应该这样使用它。但是,我不知道什么是转换配置文件(位于/config文件夹中的文件)中的字符串文本的最有效方法

原始代码

<?php

return [
    'daily' => 'Daily'
];

配置文件是Laravel初始化的第一个文件之一,这意味着您不能在配置文件中使用
转换器
UrlGenerator


我不知道您想做什么,但是您不需要在配置文件中使用Translator,尽管…

您不能在Laravel配置文件中使用trans或route方法。在加载配置文件时,这些方法无法运行。此外,配置文件用于存储纯值,我们不应在配置文件内触发任何操作

我知道有时候你想把东西放到配置文件中,用路由生成的动态数据或语言键生成的文本。在我的用例中是:在配置文件中配置菜单结构。在这种情况下,您应该选择这样的方法:只存储翻译键和一个数组,其中包含可以在运行时生成URL的信息


我把我的名字放在这里,让大家看看这个方法。

我不知道这是否是一个好的做法,但我在类似的情况下结束了这项工作

Config.php:

'Foo' => array('
'route' => 'route.name',
'name' => 'translated_line', //translated in lang file ex. /en/general.php
'),
然后在我使用的视图中:

<a href="{{ route(Config::get('foo.route')) }}">{{ Lang::get('general.'.Config::get('foo.name'))) }}</a>


也许这已经太晚了,但我还是把它贴在这里,这样也许有人会发现它很有用,比如我:)

您可以将密钥存储在配置文件中,就像这样,然后在视图中使用trans函数来获取翻译:

配置文件:

<?php

return [
'foo' => 'bar'

];
截至,以在Laravel启动后访问翻译

例如:

config/example.php


你找到解决办法了吗?我也有同样的问题,但找不到解决办法。这么明显的解决方案,OP并不是这么要求的。他试图在配置文件中调用trans()。
<?php

return [
'foo' => 'bar'

];
{{ trans(config('config.foo') }}
<?php

return [
    'daily' => 'Daily',
    'monthly' => 'app.monthly_text',
    'yearly' => 'app.yearly_text'
];
<?php

return [
    'monthly_text' => 'Monthly'
];
<?php

// ...

$daily = config('example.daily');
$a = __($daily); // "Daily"

$monthly = config('example.monthly');
$b = __($monthly); // "Monthly"

$yearly = config('example.yearly');
$c = __($yearly); // "app.yearly_text"