问题标签 [laravel-localization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
714 浏览

laravel - laravel 本地化使用 mcamara 包

我正在尝试使用 laravel mcamara 包从语言文件中进行自动语言翻译。该软件包应该以这种方式工作:

例如,当我从法国访问该网站并在包配置文件中配置法语时,默认情况下应将其重定向到此 URL:www.example.com/fr如果我从意大利访问它并且我配置了意大利语那么它应该显示:www.example.com/it下面是我将其重定向到确切语言环境的代码,但它不能自动工作:

0 投票
3 回答
647 浏览

php - laravel 本地化使用 mcamara 包在根 url 上给出 404 错误,但在其他 url 上没有

我正在尝试使用 mcamara 包进行语言翻译,但在根 url 上我收到 404 错误。实际上,我正在尝试检测用户的 IP 地址,然后根据该国家/地区设置区域设置。我将语言环境和国家/地区名称存储在数据库中。下面是我的代码:

这个文件中的AppServiceProvider.php我通过https://github.com/stevebauman/location这个包获取用户 IP 地址,并从数据库中检查语言环境并根据它设置语言环境。

网页.php

我收到 404 错误。

0 投票
1 回答
82 浏览

laravel - 如果打开此本地,Laravel 本地化添加类活动

我正在尝试添加类“活动”中包含的语言

我尝试这种方式,但它对我不起作用

0 投票
3 回答
8270 浏览

laravel - Laravel 本地化和来自 Jetstream / Fortify 的路线

我有这个新的 Laravel 项目要处理。我们希望以多种语言提供它。

我用 JetStream 开始了这个项目。JetStream / Fortify 自动处理身份验证等路由。然后我添加了https://github.com/mcamara/laravel-localization来处理本地化。它适用于我自己创建的路线:

但是如何在 Jetstream 和 Fortify 处理的路由上设置组、前缀和中间件?

[编辑]

因此,在@TEFO 提出一些建议后,我正在尝试添加一个中间件来处理设置语言环境。添加 :

强化.php:

新的中间件 setLang :

将中间件添加到$routeMiddleware.

我在尝试到达时收到此错误http://mylaravel/en/login

0 投票
2 回答
529 浏览

laravel - 在 laravel 7 中更改默认语言(本地化)的问题

我试图在 laravel 中创建多语言视图我设置了所有内容但是当我将 config/app.php 中的本地化从“en”更改为“ar”时......它保持“en”并且我使用函数 App::getLocal 进行了测试

我的“en”翻译文件“messages.php”

'''

''' 代表“ar”

'''

''' 当我使用此代码打印一条消息进行测试时:'''

'''

即使我将它 locale="ar" 放在 app.php 中,它也总是以英文打印

我希望你能帮我解决这个问题..如果你需要任何额外的信息告诉我..谢谢你的时间

0 投票
1 回答
383 浏览

laravel - Laravel - 如何为 API 动态设置语言?

我有一个端点来切换语言:

所以,控制器

但是,它似乎不适用于 API。如果您有任何想法,我非常感谢您的帮助,请帮助我。

0 投票
1 回答
355 浏览

laravel-7 - 如何在 Laravel 中使用区域设置数字获取 Carbon 本地化日期?

0 投票
3 回答
903 浏览

laravel - 如何在 laravel 刀片模板中的 php 代码中检索翻译字符串

我正在尝试在 laravel 8 的刀片模板中使用 php foreach 循环代码中字符串的本地化检索。

在 foreach 循环中,我试图$item['label']使用 laravel 具有的语言本地化来操作一个名为并等同于翻译它的值的值。

这是我当前的代码。

但我得到一个错误

ParseError 语法错误,意外 '' (T_ENCAPSED_AND_WHITESPACE),期望 '-' 或标识符 (T_STRING) 或变量 (T_VARIABLE) 或数字 (T_NUM_STRING)

首先,我可以首先使用 a{{ __ ('string') }}@lang('string')inside a@php吗?如果我不能,还有其他方法可以解决这个问题吗?

非常感谢!

0 投票
1 回答
236 浏览

php - PHP 8.0 升级后 Laravel trans_choice 无法正常工作

我在功能测试中有以下断言:

这在 PHP 7.4 中没有问题。在没有对我的应用程序代码进行任何更改的情况下,我更新到 PHP 8.0,现在看到:

有问题的控制器代码如下所示:

所以我的问题是trans_choice由于某种原因在 PHP 8.0 中返回了单数项。

我无法解释为什么会发生这种情况。回到 PHP 7.4,一切都再次过去了,所以它肯定与 PHP 版本相关联。故障排除很困难,因为当我启动时,无论我使用的是 PHP 7.4 还是 8.0,我总是得到“bar” artisan tinkerecho trans_choice("{0}foo|{1}bar|{2,}baz", 3);

语言环境不应该涉及到这个,因为我使用的是原始字符串,但是为了记录,localelocale_fallbackinconfig/app.php都设置为“en”。

0 投票
1 回答
310 浏览

laravel-blade - 如何从 Laravel 8 中的嵌套数组中检索本地化字符串

我开始为基于 Laravel 8.19 的应用程序准备本地化字符串,发现嵌套数组不起作用。我将auth.php\resources\lang\en复制到\resources\lang\ru并在嵌套数组中添加了一些字符串

然后在登录页面\resources\views\auth\login.blade.php我尝试回显 lang 字符串。

但是auth.password.definitionauth.password.forgot没有工作。我在页面上看到“auth.password.definition”,就像我没有在 auth.php 文件中定义这个字符串一样。有什么问题?

我在 Laravel 5 上的旧项目中发现,我使用该trans()函数来检索本地化字符串,并且它也适用于像上面这样的嵌套数组。现在trans()对此无能为力。