PHP-语言切换-MVC框架-会话还是基于Javascript(i18next库)?什么更好

PHP - Language Switch - MVC Framework - Session or Javascript (i18next library) based? Whats better?

本文关键字:i18next Javascript 更好 什么 语言 -MVC 框架 会话 PHP-      更新时间:2023-09-26

我真的无法决定哪种方式切换更有优势我的应用程序中的语言是在我自己的mvc框架内完成的。

基于会话

GET变量"lang"将会话参数"LANGUAGE_FILE"设置为所需语言并将通过控制器CCD_ 1加载语言文件代码后期,用作<p><?=$lang["page_title"]?></p>

基于Javascript(使用i18next库)

点击按钮设置Cookie,并通过json文件中的Javascript加载所需的语言。

i18n.init({
    resGetPath: 'assets/locales/__lng__.json',
    load: 'unspecific',
    debug: true,
    useCookie: true,
    fallbackLng : false
}, function () {
    $('body').i18n();
});

代码后面的哪个可以用作以下

<p data-i18n="page.main.title"></p>

我能看到的唯一区别是,使用Session,它需要重新加载页面,而使用javascript,它将直接翻译。

我该用什么?

就我个人而言,我会将该语言包含在URL中。示例:

www.yourdomain.com/de/yourpage

其中"de"代表德语。如果切换语言,只需重定向到另一个URL即可。这样做的好处是,每个点击该url的人都能用相同的语言看到它。包括谷歌,这对SEO非常重要。