PHP网站做简体繁体英文切换功能-多语言版本

2023-02-08    分类: 网站建设

一般网站如果要做多语言版本的话,中文简体和繁体的互相转换,因为中文每个单词都是独立的我们可以用一个js的插件来进行转换,中英文互相转换,一般都是通过单独后台编辑文字,因为机器翻译的实在让人不得其解,相信大家都看过机器翻译的字幕,是真的不知所云,那有没有这样的翻译,比较靠谱的就是谷歌翻译,就是我们在谷歌浏览器里访问英文网站,可以右键有翻译中文的选项。


翻译后效果图:
现在我们介绍一下中文简体转繁体的
这里用到一个js插件
lang.js.rar
在通用控制器HomeController.class.php中
<?php
function__construct(){
parent::__construct();
$zh_web_lang=array();
$lang=cookie('zh_web_lang');
//谁放在前面,谁为默认的显示。
if($lang=="jianti"){
$zh_web_lang['hreflang']="s";
$zh_web_lang['atuolang']="t";
$zh_web_lang['lang']="fanti";
$zh_web_lang['html']="简体中文";
}else{
$zh_web_lang['hreflang']="t";
$zh_web_lang['atuolang']="s";
$zh_web_lang['lang']="jianti";
$zh_web_lang['html']="繁體中文";
}
$this->assign('zh_web_lang',$zh_web_lang);//输出默认语言
}
IndexController.class.php中用于切换cookie
<?php
publicfunctiontrunlang(){
if(IS_POST){
$lang=cookie('zh_web_lang');
if($lang=="jianti"){
cookie('zh_web_lang','fanti');
}else{
cookie('zh_web_lang','jianti');
}
}else{
$this->redirect('Index/index');
}
}
在页面的切换点中,html的头部文件
<ahref="javascript:zh_lang('{$zh_web_lang.hreflang}');"id="zh_lang"
data-lang="{$zh_web_lang.lang}">{$zh_web_lang.html}
</a>
<scripttype="text/javascript"src="/Public/js/lang.js?v=2"></script>
<scripttype="text/javascript">
//简体繁體中文切换
functionzh_lang(go){
$.ajax({url:"{:U('Index/trunlang')}",
type:"POST",
cache:false,
success:function(){
vartran_a=$('#zh_lang');
if(tran_a.attr("data-lang")=="fanti"){
//转换成简体
tran_a.attr("href","javascript:zh_lang('t');");
tran_a.attr("data-lang",'jianti');
tran_a.html('繁體中文');
}else{
//转换成繁體
tran_a.attr("href","javascript:zh_lang('s');");
tran_a.attr("data-lang",'fanti');
tran_a.html('简体中文');
}
zh_tran(go);
}
});
}
window.onload=$(function(){
zh_tran("{$zh_web_lang.atuolang}");
});
</script>
如果简体和繁体的切换标识需要分开的,可以把上面的a标签修改成下面的即可
<liclass="{:$zh_web_lang['atuolang']=='s'?'on':''}">
<a
<ifcondition="$zh_web_lang['atuolang']eq't'">href="javascript:zh_lang('{$zh_web_lang.hreflang}','j');"</if>
class="zh_lang"data-lang="{$zh_web_lang.lang}">{$Think.lang.Zh-cn}</a>
</li>
<liclass="{:$zh_web_lang['atuolang']=='t'?'on':''}">
<a
<ifcondition="$zh_web_lang['atuolang']eq's'">href="javascript:zh_lang('{$zh_web_lang.hreflang}','f');"</if>
class="zh_lang"data-lang="{$zh_web_lang.lang}">{$Think.lang.Tw-cn}</a>
</li>
第二种是谷歌翻译:
<selectonchange="doGTranslate(this);"><optionvalue="">SelectLanguage</option><optionvalue="en|af">Afrikaans</option><optionvalue="en|sq">Albanian</option><optionvalue="en|ar">Arabic</option><optionvalue="en|hy">Armenian</option><optionvalue="en|az">Azerbaijani</option><optionvalue="en|eu">Basque</option><optionvalue="en|be">Belarusian</option><optionvalue="en|bg">Bulgarian</option><optionvalue="en|ca">Catalan</option><optionvalue="en|zh-CN">Chinese(Simplified)</option><optionvalue="en|zh-TW">Chinese(Traditional)</option><optionvalue="en|hr">Croatian</option><optionvalue="en|cs">Czech</option><optionvalue="en|da">Danish</option><optionvalue="en|nl">Dutch</option><optionvalue="en|en">English</option><optionvalue="en|et">Estonian</option><optionvalue="en|tl">Filipino</option><optionvalue="en|fi">Finnish</option><optionvalue="en|fr">French</option><optionvalue="en|gl">Galician</option><optionvalue="en|ka">Georgian</option><optionvalue="en|de">German</option><optionvalue="en|el">Greek</option><optionvalue="en|ht">HaitianCreole</option><optionvalue="en|iw">Hebrew</option><optionvalue="en|hi">Hindi</option><optionvalue="en|hu">Hungarian</option><optionvalue="en|is">Icelandic</option><optionvalue="en|id">Indonesian</option><optionvalue="en|ga">Irish</option><optionvalue="en|it">Italian</option><optionvalue="en|ja">Japanese</option><optionvalue="en|ko">Korean</option><optionvalue="en|lv">Latvian</option><optionvalue="en|lt">Lithuanian</option><optionvalue="en|mk">Macedonian</option><optionvalue="en|ms">Malay</option><optionvalue="en|mt">Maltese</option><optionvalue="en|no">Norwegian</option><optionvalue="en|fa">Persian</option><optionvalue="en|pl">Polish</option><optionvalue="en|pt">Portuguese</option><optionvalue="en|ro">Romanian</option><optionvalue="en|ru">Russian</option><optionvalue="en|sr">Serbian</option><optionvalue="en|sk">Slovak</option><optionvalue="en|sl">Slovenian</option><optionvalue="en|es">Spanish</option><optionvalue="en|sw">Swahili</option><optionvalue="en|sv">Swedish</option><optionvalue="en|th">Thai</option><optionvalue="en|tr">Turkish</option><optionvalue="en|uk">Ukrainian</option><optionvalue="en|ur">Urdu</option><optionvalue="en|vi">Vietnamese</option><optionvalue="en|cy">Welsh</option><optionvalue="en|yi">Yiddish</option></select><divid="google_translate_element2"></div>
<scripttype="text/javascript">
functiongoogleTranslateElementInit2(){newgoogle.translate.TranslateElement({pageLanguage:'en',autoDisplay:false},'google_translate_element2');}
</script>
</script><scripttype="text/javascript"src="https://translate.google.cn/translate_a/element.js?&cb=googleTranslateElementInit2"></script>
<scripttype="text/javascript">
/*<![CDATA[*/
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){returnr[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(newRegExp('\\b'+e(c)+'\\b','g'),k[c]);returnp}('67(a,b){n{4(2.9){3c=2.9("o");c.p(b,f,f);a.q(c)}g{3c=2.r();a.s(\'t\'+b,c)}}u(e){}}6h(a){4(a.8)a=a.8;4(a==\'\')v;3b=a.w(\'|\')[1];3c;3d=2.x(\'y\');z(3i=0;i<d.5;i++)4(d[i].A==\'B-C-D\')c=d[i];4(2.j(\'k\')==E||2.j(\'k\').l.5==0||c.5==0||c.l.5==0){F(6(){h(a)},G)}g{c.8=b;7(c,\'m\');7(c,\'m\')}}',43,43,'||document|var|if|length|function|GTranslateFireEvent|value|createEvent||||||true|else|doGTranslate||getElementById|google_translate_element2|innerHTML|change|try|HTMLEvents|initEvent|dispatchEvent|createEventObject|fireEvent|on|catch|return|split|getElementsByTagName|select|for|className|goog|te|combo|null|setTimeout|500'.split('|'),0,{}))
functiondelCookie(name){
varDays=30;
varexp=newDate();
exp.setTime(exp.getTime()-Days*24*60*60*30);
//这里一定要注意,如果直接访问ip的话,不用注明域名domain
//但访问的是域名例如www.baidu.com时,翻译插件的cookie同时存在于一级和二级域名中
//即删除翻译cookie时要把domain=www.baidu.com和domain=.baidu.com两个cookie一起删除才行
vardomain=document.domain;
vardomainIsIp=false;
vardd=domain.split(".");
if(dd.length==4){
domainIsIp=true;
}
document.cookie=name+"='';path=/;expires="+exp.toUTCString();
if(domainIsIp==false){
domain="."+dd[1]+"."+dd[2];
document.cookie=name+"='';domain="+domain+";expires="+exp.toGMTString()+";path=/";
}

名称栏目:PHP网站做简体繁体英文切换功能-多语言版本
分享网址:/news15/236015.html

成都网站建设公司_创新互联,为您提供云服务器定制开发网站导航企业网站制作响应式网站搜索引擎优化

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设