首页 > 解决方案 > Laravel 通过变量/值获取本地化

问题描述

lang/en/messages.php我有以下键/值:

"producer" => "Producer",

A$user->role保存Producer数据库中的值。

例如{{ __($user->role) }}不起作用。是否可以根据值而不是键进行翻译?

我知道这{{ __("messages.producer") }}会奏效——但这不是我需要的。

标签: laravellocalization

解决方案


您可以像这样获取语言文件的数组:

$messages = Lang::get('messages')

之后,您可以使用以下值搜索键array_search

$key = array_search($user->role, $messages);

然后您可以使用密钥进行翻译:

{{ __("messages." . $key) }}

您可能想要创建一个助手来实现这一点:)。


推荐阅读