PHP前台语言切换

本贴最后更新于 3171 天前,其中的信息可能已经时移世异

先说下步骤。

首先,你要有语言包。比如:zh-cn.php、zh-tw.php

代码如下:

'zh-TW',
);
?>

然后,在所在程序的,前台公用函数里面写入

session_start();
$language = isset($_COOKIE['language'])?$_COOKIE['language']:$_SESSION['language'];
if($language){
    $tclanguage = require 'language/'.$language.'.php';
}else{
    $tclanguage = require 'language/zh-cn.php';
}

$tclanguage获取语言包,然后将字段传递给前端界面。

前端设置语言切换按钮

  • 中文
  • 繁体
  • English
  • 点击链接以后,自行函数。

    $language=GetVars('key','GET');
    setcookie('language',$language);
    session_start();
    $_SESSION['language']=$language;
    Redirect(首页地址);

    然后,就是前台调用了。

    $tclanguage['lang']


    • B3log

      B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

      1063 引用 • 3454 回帖 • 189 关注
    • PHP

      PHP(Hypertext Preprocessor)是一种开源脚本语言。语法吸收了 C 语言、 Java 和 Perl 的特点,主要适用于 Web 开发领域,据说是世界上最好的编程语言。

      179 引用 • 407 回帖 • 490 关注
    • language
      2 引用 • 13 回帖
    • require
      1 引用 • 4 回帖

    相关帖子

    欢迎来到这里!

    我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

    注册 关于
    请输入回帖内容 ...
    • gsls1817

      🔢

    • 其他回帖
    • zempty

      感谢分享黑客派有你更精彩❤️

    • someone1764

      /(:з」∠) 这个不难,主要是写语言包比较烦..

      1 回复
    • someone1764

      好吧,我也基本是这么做的

    推荐标签 标签

    • Firefox

      Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

      8 引用 • 30 回帖 • 410 关注
    • Log4j

      Log4j 是 Apache 开源的一款使用广泛的 Java 日志组件。

      20 引用 • 18 回帖 • 29 关注
    • 互联网

      互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

      98 引用 • 344 回帖
    • HHKB

      HHKB 是富士通的 Happy Hacking 系列电容键盘。电容键盘即无接点静电电容式键盘(Capacitive Keyboard)。

      5 引用 • 74 回帖 • 478 关注
    • 强迫症

      强迫症(OCD)属于焦虑障碍的一种类型,是一组以强迫思维和强迫行为为主要临床表现的神经精神疾病,其特点为有意识的强迫和反强迫并存,一些毫无意义、甚至违背自己意愿的想法或冲动反反复复侵入患者的日常生活。

      15 引用 • 161 回帖 • 3 关注
    • 思源笔记

      思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

      融合块、大纲和双向链接,重构你的思维。

      23020 引用 • 92599 回帖
    • 微软

      微软是一家美国跨国科技公司,也是世界 PC 软件开发的先导,由比尔·盖茨与保罗·艾伦创办于 1975 年,公司总部设立在华盛顿州的雷德蒙德(Redmond,邻近西雅图)。以研发、制造、授权和提供广泛的电脑软件服务业务为主。

      8 引用 • 44 回帖
    • Openfire

      Openfire 是开源的、基于可拓展通讯和表示协议 (XMPP)、采用 Java 编程语言开发的实时协作服务器。Openfire 的效率很高,单台服务器可支持上万并发用户。

      6 引用 • 7 回帖 • 101 关注
    • danl
      146 关注
    • 电影

      这是一个不能说的秘密。

      121 引用 • 604 回帖 • 1 关注
    • Java

      Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

      3190 引用 • 8214 回帖 • 1 关注
    • Vim

      Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。

      29 引用 • 66 回帖 • 2 关注
    • Latke

      Latke 是一款以 JSON 为主的 Java Web 框架。

      71 引用 • 535 回帖 • 789 关注
    • Shell

      Shell 脚本与 Windows/Dos 下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比 Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,因为它使用了 Linux/Unix 下的命令。

      123 引用 • 74 回帖 • 2 关注
    • 书籍

      宋真宗赵恒曾经说过:“书中自有黄金屋,书中自有颜如玉。”

      78 引用 • 391 回帖
    • OAuth

      OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是 oAuth 的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此 oAuth 是安全的。oAuth 是 Open Authorization 的简写。

      36 引用 • 103 回帖 • 17 关注
    • Swagger

      Swagger 是一款非常流行的 API 开发工具,它遵循 OpenAPI Specification(这是一种通用的、和编程语言无关的 API 描述规范)。Swagger 贯穿整个 API 生命周期,如 API 的设计、编写文档、测试和部署。

      26 引用 • 35 回帖 • 5 关注
    • Kafka

      Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是现代系统中许多功能的基础。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。

      36 引用 • 35 回帖
    • TensorFlow

      TensorFlow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。

      20 引用 • 19 回帖 • 1 关注
    • golang

      Go 语言是 Google 推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发 Go,是因为过去 10 多年间软件开发的难度令人沮丧。Go 是谷歌 2009 发布的第二款编程语言。

      497 引用 • 1388 回帖 • 278 关注
    • 宕机

      宕机,多指一些网站、游戏、网络应用等服务器一种区别于正常运行的状态,也叫“Down 机”、“当机”或“死机”。宕机状态不仅仅是指服务器“挂掉了”、“死机了”状态,也包括服务器假死、停用、关闭等一些原因而导致出现的不能够正常运行的状态。

      13 引用 • 82 回帖 • 60 关注
    • Docker

      Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。

      492 引用 • 926 回帖
    • Hibernate

      Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。

      39 引用 • 103 回帖 • 715 关注
    • SMTP

      SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。

      4 引用 • 18 回帖 • 623 关注
    • Pipe

      Pipe 是一款小而美的开源博客平台。Pipe 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

      这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

      132 引用 • 1114 回帖 • 125 关注
    • VirtualBox

      VirtualBox 是一款开源虚拟机软件,最早由德国 Innotek 公司开发,由 Sun Microsystems 公司出品的软件,使用 Qt 编写,在 Sun 被 Oracle 收购后正式更名成 Oracle VM VirtualBox。

      10 引用 • 2 回帖 • 1 关注
    • RabbitMQ

      RabbitMQ 是一个开源的 AMQP 实现,服务器端用 Erlang 语言编写,支持多种语言客户端,如:Python、Ruby、.NET、Java、C、PHP、ActionScript 等。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

      49 引用 • 60 回帖 • 361 关注