【问题标题】:PHP - Language Switch - MVC Framework - Session or Javascript (i18next library) based? Whats better?PHP - 语言切换 - MVC 框架 - 基于会话或 Javascript(i18next 库)?有什么更好的?
【发布时间】:2016-02-25 00:43:36
【问题描述】:

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

基于会话

GET 变量“lang”将会话参数“LANGUAGE_FILE”设置为所需的语言 并将在控制器$this->language->load(Session::get("LANGUAGE_FILE")); 上加载一个语言文件 后面的代码中,用作<p><?=$lang["page_title"]?></p>

基于 Javascript(使用 i18next 库)

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

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 会直接翻译。

我该用什么?

【问题讨论】:

    标签: javascript php session internationalization


    【解决方案1】:

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

    www.yourdomain.com/de/yourpage
    

    “de”代表德语。 如果您切换语言,只需重定向到不同的 URL。这样做的好处是每个点击此 url 的人都会以相同的语言看到它。包括对 SEO 非常重要的谷歌。

    【讨论】:

    • 听起来不错。对 Google 而言,这并不重要,因为该应用仅适用于由支持/管理员激活的注册用户。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-08
    • 2021-06-24
    • 1970-01-01
    • 1970-01-01
    • 2011-09-04
    • 2017-04-22
    相关资源
    最近更新 更多