wwccss 访问次数 : 593 注册日期 : 05-05-01 10:08 上次访问 : 10-07-19 11:44 |
BugFree从一开始的定位就是全球性的,而不仅仅是国内应用,所以多语言支持是一个非常重要的问题,其中涉及到的有以下几个方面的问题: 1. 如何支持多语言。 2. 不同语言的外观的问题。 3. 编码的问题。 1. 对于第一个问题,我们是这样解决的: 在程序里面凡涉及到界面性的信息,全部做成变量,一种语言一个语言变量文件,比如我们现在有Chinese.php,English.php。在这些语言变量文件中,存储的是BugFree的页面上需要展示的信息,比如: Chinese.php中对于登录界面的定义如下: [quote]/* Setting of Login.php */ $TplConfig["Login"]["LoginTitle"] = "欢迎使用 BugFree"; $TplConfig["Login"]["BugUserName"] = "用户名:"; $TplConfig["Login"]["BugUserPWD"] = "密码:"; $TplConfig["Login"]["ButtonLogin"] = "登录 BugFree [L]"; $TplConfig["Login"]["SelectLang"] = "语言:"; $TplConfig["Login"]["SelectStyle"] = "样式:";[/quote] 而在english.php里面则对应如下: [quote]/* Setting of Login.php */ $TplConfig["Login"]["LoginTitle"] = "Welcome to BugFree"; $TplConfig["Login"]["BugUserName"] = "Username:"; $TplConfig["Login"]["BugUserPWD"] = "Password:"; $TplConfig["Login"]["ButtonLogin"] = "Login BugFree [L]"; $TplConfig["Login"]["SelectLang"] = "Language:"; $TplConfig["Login"]["SelectStyle"] = "Style:";[/quote] 2. 对于第二个问题,不同的语言可以有自己不同的样式表文件,这样可以解决很多的开源软件英文界面非常漂亮,而中文界面则非常的难看的问题。其实他们的原因就是使用一个样式表文件,而中英文的字体显示的时候千差万别,很难一致。 3. 对于第三个问题,我们提供utf8编码的支持,这样在多语言平台切换的时候,可以保证数据内容不会发生变化。 |
回帖 |
quickpoint 访问次数 : 1 注册日期 : 05-07-29 11:52 上次访问 : 09-10-29 21:05 |
国际化中这几个问题是我一直在考虑的问题。学习。 |
回帖 |
quickpoint 访问次数 : 1 注册日期 : 05-07-29 11:52 上次访问 : 09-10-29 21:05 |
我想问一下:你们是在一开始就注意到要国际化吗?还是在后面的版本中加入了这个想法? |
回帖 |
bugfree 访问次数 : 2 注册日期 : 05-06-26 00:03 上次访问 : 09-10-29 21:05 |
Ver 0.2时即支持多语言。 |
回帖 |
fhiesc 访问次数 : 1 注册日期 : 05-12-02 14:38 上次访问 : 09-10-29 21:05 |
您好! 我下载了 Bugfree ,并安装可以正常运行.想问一下多语言是如何实现的呢? 在 login.php 页面中 $TPL->assign("LangList",""); // Assign Language list. $TPL->assign("SelectLang",""); // Assign the javascript to select the language user are using now. $TPL->assign("StyleList","")); // Assign CSS Style list. $TPL->assign("SelectStyle",""); // Assign the javascript to select the CSS style user are using now. $TPL->assign("ServerInfo",""); 但是在什么地方替换了"用户名","密码"呢?在代码中我没有找到,望指教. |
回帖 |
wwccss 访问次数 : 593 注册日期 : 05-05-01 10:08 上次访问 : 10-07-19 11:44 |
Include/SetupBug.inc.php 会根据当前的编码包含对应的语言文件。 |
回帖 |
fhiesc 访问次数 : 1 注册日期 : 05-12-02 14:38 上次访问 : 09-10-29 21:05 |
在 chinese.php 中,配置信息如下: $TplConfig["Login"]["BugUserName"]= "用户名:"; 在 login.tpl 中的模板如下: {$TplConfig.Login.BugUserName} 请问一下,模板中的信息是怎么被替换的呢?原理是什么呢?我没有找到替换的代码?是不是只要写成 "xxx.xxx.xxx"这种格式就可以自动替换呢?麻烦给我讲一下. |
回帖 |