laravel中__()函数用于 多语言 翻译,根据当前语言环境返回对应文本。2. 翻译文件存于 resources/lang 目录,支持 jsON 或php 数组文件格式。3. json文件适用于简单短语,如 en.json 和 cn.json 分别存储英文和中文翻译。4. PHP 数组文件可按模块分组,如 auth.php 中使用点语法访问__(‘auth.failed’)。5. 通过 app()->setLocale(‘cn’) 设置当前语言,可结合 session、URL 或 浏览器 语言自动切换。6. __()函数未找到翻译时返回原始 字符串。合理使用__()` 函数和语言文件可快速实现国际化。

在 Laravel 中,__() 是一个内置的辅助函数,用于实现 多语言 文本翻译。它会根据当前应用的语言环境,返回对应语言的翻译内容。使用 __() 函数可以让你的应用轻松支持多语言。
1. 翻译文件的存放位置
Laravel 的翻译文件存放在 resources/lang 目录下。每个语言对应一个子目录,例如:
或者使用 PHP 数组文件形式:
- resources/lang/en/messages.php
- resources/lang/cn/messages.php
2. 使用 JSON 文件进行翻译
推荐使用 JSON 文件管理简单短语翻译。例如,在 resources/lang/en.json 中定义英文翻译:
{“Hello!”: “Hello!”, “Welcome to our site”: “Welcome to our site”}
在 resources/lang/cn.json 中定义中文翻译:
{“Hello!”: “ 你好!”, “Welcome to our site”: “ 欢迎访问我们的网站 ”}
然后在模板或代码中使用 __() 函数调用:
{{__(‘Hello!’) }}
{{__(‘Welcome to our site’) }}
输出将根据当前语言环境自动切换。
3. 使用 PHP 数组文件管理分组翻译
你也可以按功能模块组织翻译内容。比如创建 resources/lang/en/auth.php:
return [‘failed’ => ‘These credentials do not match our records.’, ];
对应的中文文件 resources/lang/cn/auth.php:
return [‘failed’ => ‘ 用户名或密码错误。’, ];
使用点语法访问分组中的翻译项:
{{__(‘auth.failed’) }}
4. 设置当前语言环境
通过 app()->setLocale($lang) 设置当前语言。通常在 中间件 或控制器中设置:
app()->setLocale(‘cn’); // 切换为中文
你可以从用户 Session、URL 参数或 浏览器 语言自动判断并设置语言。
5. 检查翻译是否存在
__()
如果未找到对应翻译,__()
基本上就这些。合理使用 __() 辅助函数结合语言文件,能让你的 Laravel 应用快速支持国际化。
以上就是 Laravel 中怎么使用__()辅助函数实现文本翻译的详细内容,更多请关注 php 中文网其它相关文章!