ホームページ  >  記事  >  バックエンド開発  >  PHPでウェブサイトを中国語と英語の間で切り替える方法

PHPでウェブサイトを中国語と英語の間で切り替える方法

WBOY
WBOYオリジナル
2016-06-13 13:42:101782ブラウズ

PHP を使用して Web サイトを中国語と英語の間で切り替えるにはどうすればよいですか?
現在、外国貿易のウェブサイトを作成するには中国語と英語の両方のバージョンが必要ですが、2 つのウェブサイトを別々に作成する必要がありますか、それとも 1 つだけ作成してから中国語と英語を切り替える必要がありますか?

-----解決策---------
多言語 Web サイト ソリューション php

前書き:
多言語 Web サイト開発の焦点は、言語間の問題を解決することです。
では、この問題をどうやって解決するのでしょうか?これは 3 つのステップに分けることができます:

1. 多言語ページ
2. 多言語データベース
3. 統一されたユーザー アクセス言語

1. 多言語ページ
考慮すべき必須の質問:
A. ユーザーがログインすると、文字が自動的に認識され、さまざまな言語パッケージが呼び出されますか?
B. ユーザーが異なる言語に切り替えると、異なる言語パッケージが呼び出されますか?
C. 複数の言語を追加した後のディレクトリ構造は?

ページの多言語化とは、ここで静的言語パッケージを使用できることを意味します。
言語ディレクトリは、言語ごとに個別のサブディレクトリを使用して、設計中に含める必要があります。
英語/en、簡体字中国語/gb、繁体字中国語/b5 など (他の言語に拡張可能)
各ディレクトリには、各ページの言語バージョンが含まれます。言語バージョンを選択すると、対応するバージョンの言語パックを呼び出すことができます。

特定のメソッド:
0. js 言語を使用してブラウザ言語を識別し、異なる言語パッケージを呼び出します。

1. language/en/global.ln は英語版のグローバル言語です。パック。

2.global.ln の内容は次のとおりです:
$title = "English webstie";
$charset = "UTF-8";

3.index.php 呼び出し:
require_once()
?>;
;
;
;$title<title>; <br> <meta http-equiv="content-type" content="text/html;charset=$charset">;<br> </head>;<br> <body>;</ body>;<br> </html>;<br> <br> このように、拡張を通じてページの多言語化を実現できます。<br> <br>2. データベースの多言語化<br> 考慮すべき問題: <br> A. バックグラウンドデータ入力の多​​言語化? <br> B. ユーザーが送信したコンテンツを異なるバージョンで保存するにはどうすればよいですか? <br> C. 3 つの言語パッケージを提供しますか、それとも英語と簡体字中国語を提供すると、簡体字中国語は繁体字中国語に変換されますか? <br> <br> データベースの多言語化とは、データベース内の複数の言語の統一を実現することです。 utf-8 統一エンコーディングを使用する必要があります。 <br> テキストがどの言語であっても、utf-8 を使用してデータベースに均一に保存されます。テーブルのフィールドを使用して、テキスト <br> が属する言語バージョンを識別します。 <br> <br> 詳細: <br> <br> A. 背景追加​​の問題について: <br> <br> 1. 背景を追加する場合、多言語入力が必要です。まず、UTF-8 でエンコードされたデータベースを作成し、英語/簡体字中国語を入力し、簡体字中国語を繁体字中国語 <br> に変換してから、UTF-8 エンコードを使用してデータベースに保存します。 <br> <br> 2. utf-8 でエンコードされたテーブル構造を作成し、インポート言語識別子がどの言語バージョンに属するかを決定します。 <br> ただし、特定のバージョンでは、そのバージョンに属するテキストを検索して表示します。それ以外のテキストは表示されません。 <br> DROP TABLE IF EXISTS `zz_importer`;<br> CREATE TABLE IF NOT EXISTS `zz_importer` (<br> `importID` int(11) NOT NULL auto_increment,<br> `importTime` date NOT NULL デフォルト '0000- 00-00',<br> `imrotfile` varchar(100) NOT NULL デフォルト '',<br> `import language` varchar(100) NOT NULL デフォルト ''<br> PRIMARY KEY (`importID`)<br> ) ENGINE=MyISAM DEFAULT CHARSET=uft-8;<br> <br> 3. 簡体字中国語を繁体字中国語に変換します。 <br> php の iconv を使用します。このプロセスは Linux/UNIX では有効ですが、Windows では有効ではありません。 <br> iconv("GB2312","BIG5",$text);<br> <br> 4. charset = "utf-8" なので、データは utf-8 エンコードで存在するため、<br> データを追加するときに、言語バージョンを識別するには en/gb/big5 を使用します。<br> INSERT INTO `zz_importer` VALUES (,'', '', 'en');<br> INSERT INTO `zz_importer` VALUES (, '', ' ', 'gb');<br> INSERT INTO `zz_importer` VALUES (,'', '', 'big5');<br> <br> B. ユーザーが追加した質問の場合: <br> 1. 次のように仮定します。ページヘッダーが UTF-8 であるため、ユーザーは簡体字中国語を使用しています。ユーザーのブラウザは utf-8 エンコード <br> でページを閲覧します。 <br> <br> 2. 追加したデータベース自体は utf-8 モードで存在します。 <br> <br> 3. データを追加するとき、gb を使用して言語バージョンをそれぞれ識別します <br> INSERT INTO `zz_importer` VALUES (,'', '', 'gb');<br> <br> C.簡体字中国語と繁体字中国語が別々に提供されるか変換されるかという問題について <br> <br> 別々に提供されます - 多言語標準に準拠しており、柔軟性が高く、ISP に対する特別な要件はありません。 <br> <br> 変換の提供 - 送信速度に影響があり、ISP は iconv 機能のサポートを提供する必要があります。 <br> <br>3. ユーザーのアクセス言語が統一されています <br> <br> A. ユーザーが簡体字中国語バージョンを使用していると仮定します: <br><meta http-equiv="content-type" content="text/html;charset=UTF-8">;<br> これはすべての言語バージョンに当てはまります。 <br> <br> B. language/gb の言語パッケージを呼び出します。 <br> <br> C. 言語フィールドが gb であるデータをデータベースで検索し、<br> <br> を表示します。 D. ユーザーが情報を送信する場合は、上記の多言語データベースの質問 B を参照してください。 </p> <div class="clear"></div></div><div class="nphpQianMsg"><div class="clear"></div></div><div class="nphpQianSheng"><span>声明:</span><div>この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。</div></div></div><div class="nphpSytBox"><span>前の記事:<a class="dBlack" title="SQL ステートメント文字列を分割およびマージする方法" href="http://m.php.cn/ja/faq/223526.html">SQL ステートメント文字列を分割およびマージする方法</a></span><span>次の記事:<a class="dBlack" title="SQL ステートメント文字列を分割およびマージする方法" href="http://m.php.cn/ja/faq/223528.html">SQL ステートメント文字列を分割およびマージする方法</a></span></div><div class="nphpSytBox2"><div class="nphpZbktTitle"><h2>関連記事</h2><em><a href="http://m.php.cn/ja/article.html" class="bBlack"><i>続きを見る</i><b></b></a></em><div class="clear"></div></div><ul class="nphpXgwzList"><li><b></b><a href="http://m.php.cn/ja/faq/1.html" title="cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法" class="aBlack">cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/ja/faq/1.html" title="cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法" class="aBlack">cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/ja/faq/1.html" title="cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法" class="aBlack">cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/ja/faq/1.html" title="cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法" class="aBlack">cURL を使用して PHP で Get リクエストと Post リクエストを実装する方法</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/ja/faq/2.html" title="正規表現内のすべての式記号 (概要)" class="aBlack">正規表現内のすべての式記号 (概要)</a><div class="clear"></div></li></ul></div></div><div class="nphpFoot"><div class="nphpFootBg"><ul class="nphpFootMenu"><li><a href="http://m.php.cn/ja/"><b class="icon1"></b><p>ホームページ</p></a></li><li><a href="http://m.php.cn/ja/course.html"><b class="icon2"></b><p>コース</p></a></li><li><a href="http://m.php.cn/ja/wenda.html"><b class="icon4"></b><p>に質問</p></a></li><li><a href="http://m.php.cn/ja/login"><b class="icon5"></b><p>私の</p></a></li><div class="clear"></div></ul></div></div><div class="nphpYouBox" style="display: none;"><div class="nphpYouBg"><div class="nphpYouTitle"><span onclick="$('.nphpYouBox').hide()"></span><a href="http://m.php.cn/ja/"></a><div class="clear"></div></div><ul class="nphpYouList"><li><a href="http://m.php.cn/ja/"><b class="icon1"></b><span>ホームページ</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/ja/course.html"><b class="icon2"></b><span>コース</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/ja/article.html"><b class="icon3"></b><span>記事</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/ja/wenda.html"><b class="icon4"></b><span>に質問</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/ja/dic.html"><b class="icon6"></b><span>辞書</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/ja/course/type/99.html"><b class="icon7"></b><span>マニュアル</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/ja/xiazai/"><b class="icon8"></b><span>ダウンロード</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/ja/faq/zt" title="特集"><b class="icon12"></b><span>特集</span><div class="clear"></div></a></li><div class="clear"></div></ul></div></div><div class="nphpDing" style="display: none;"><div class="nphpDinglogo"><a href="http://m.php.cn/ja/"></a></div><div class="nphpNavIn1"><div class="swiper-container nphpNavSwiper1"><div class="swiper-wrapper"><div class="swiper-slide"><a href="http://m.php.cn/ja/" >ホームページ</a></div><div class="swiper-slide"><a href="http://m.php.cn/ja/article.html" class="hover">記事</a></div><div class="swiper-slide"><a href="http://m.php.cn/ja/wenda.html" >に質問</a></div><div class="swiper-slide"><a href="http://m.php.cn/ja/course.html" >コース</a></div><div class="swiper-slide"><a href="http://m.php.cn/ja/faq/zt" >特集</a></div><div class="swiper-slide"><a href="http://m.php.cn/ja/xiazai" >ダウンロード</a></div><div class="swiper-slide"><a href="http://m.php.cn/ja/game" >ゲーム</a></div><div class="swiper-slide"><a href="http://m.php.cn/ja/dic.html" >辞書</a></div><div class="clear"></div></div></div><div class="langadivs" ><a href="javascript:;" class="bg4 bglanguage"></a><div class="langadiv" ><a onclick="javascript:setlang('zh-cn');" class="language course-right-orders chooselan " href="javascript:;"><span>简体中文</span><span>(ZH-CN)</span></a><a onclick="javascript:setlang('en');" class="language course-right-orders chooselan " href="javascript:;"><span>English</span><span>(EN)</span></a><a onclick="javascript:setlang('zh-tw');" class="language course-right-orders chooselan " href="javascript:;"><span>繁体中文</span><span>(ZH-TW)</span></a><a onclick="javascript:;" class="language course-right-orders chooselan chooselanguage" href="javascript:;"><span>日本語</span><span>(JA)</span></a><a onclick="javascript:setlang('ko');" class="language course-right-orders chooselan " href="javascript:;"><span>한국어</span><span>(KO)</span></a><a onclick="javascript:setlang('ms');" class="language course-right-orders chooselan " href="javascript:;"><span>Melayu</span><span>(MS)</span></a><a onclick="javascript:setlang('fr');" class="language course-right-orders chooselan " href="javascript:;"><span>Français</span><span>(FR)</span></a><a onclick="javascript:setlang('de');" class="language course-right-orders chooselan " href="javascript:;"><span>Deutsch</span><span>(DE)</span></a></div></div><script> var swiper = new Swiper('.nphpNavSwiper1', { slidesPerView : 'auto', observer: true,//修改swiper自己或子元素时,自动初始化swiper observeParents: true,//修改swiper的父元素时,自动初始化swiper }); </script></div></div><!--顶部导航 end--><script>isLogin = 0;</script><script type="text/javascript" src="/static/layui/layui.js"></script><script type="text/javascript" src="/static/js/global.js?4.9.47"></script></div><script src="https://vdse.bdstatic.com//search-video.v1.min.js"></script><link rel='stylesheet' id='_main-css' href='/static/css/viewer.min.css' type='text/css' media='all'/><script type='text/javascript' src='/static/js/viewer.min.js?1'></script><script type='text/javascript' src='/static/js/jquery-viewer.min.js'></script><script>jQuery.fn.wait = function (func, times, interval) { var _times = times || -1, //100次 _interval = interval || 20, //20毫秒每次 _self = this, _selector = this.selector, //选择器 _iIntervalID; //定时器id if( this.length ){ //如果已经获取到了,就直接执行函数 func && func.call(this); } else { _iIntervalID = setInterval(function() { if(!_times) { //是0就退出 clearInterval(_iIntervalID); } _times <= 0 || _times--; //如果是正数就 -- _self = $(_selector); //再次选择 if( _self.length ) { //判断是否取到 func && func.call(_self); clearInterval(_iIntervalID); } }, _interval); } return this; } $("table.syntaxhighlighter").wait(function() { $('table.syntaxhighlighter').append("<p class='cnblogs_code_footer'><span class='cnblogs_code_footer_icon'></span></p>"); }); $(document).on("click", ".cnblogs_code_footer",function(){ $(this).parents('table.syntaxhighlighter').css('display','inline-table');$(this).hide(); }); $('.nphpQianCont').viewer({navbar:true,title:false,toolbar:false,movable:false,viewed:function(){$('img').click(function(){$('.viewer-close').trigger('click');});}}); </script></body></html>