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;
;
;
; body>;
;
このように、拡張を通じてページの多言語化を実現できます。
2. データベースの多言語化
考慮すべき問題:
A. バックグラウンドデータ入力の多言語化?
B. ユーザーが送信したコンテンツを異なるバージョンで保存するにはどうすればよいですか?
C. 3 つの言語パッケージを提供しますか、それとも英語と簡体字中国語を提供すると、簡体字中国語は繁体字中国語に変換されますか?
データベースの多言語化とは、データベース内の複数の言語の統一を実現することです。 utf-8 統一エンコーディングを使用する必要があります。
テキストがどの言語であっても、utf-8 を使用してデータベースに均一に保存されます。テーブルのフィールドを使用して、テキスト
が属する言語バージョンを識別します。
詳細:
A. 背景追加の問題について:
1. 背景を追加する場合、多言語入力が必要です。まず、UTF-8 でエンコードされたデータベースを作成し、英語/簡体字中国語を入力し、簡体字中国語を繁体字中国語
に変換してから、UTF-8 エンコードを使用してデータベースに保存します。
2. utf-8 でエンコードされたテーブル構造を作成し、インポート言語識別子がどの言語バージョンに属するかを決定します。
ただし、特定のバージョンでは、そのバージョンに属するテキストを検索して表示します。それ以外のテキストは表示されません。
DROP TABLE IF EXISTS `zz_importer`;
CREATE TABLE IF NOT EXISTS `zz_importer` (
`importID` int(11) NOT NULL auto_increment,
`importTime` date NOT NULL デフォルト '0000- 00-00',
`imrotfile` varchar(100) NOT NULL デフォルト '',
`import language` varchar(100) NOT NULL デフォルト ''
PRIMARY KEY (`importID`)
) ENGINE=MyISAM DEFAULT CHARSET=uft-8;
3. 簡体字中国語を繁体字中国語に変換します。
php の iconv を使用します。このプロセスは Linux/UNIX では有効ですが、Windows では有効ではありません。
iconv("GB2312","BIG5",$text);
4. charset = "utf-8" なので、データは utf-8 エンコードで存在するため、
データを追加するときに、言語バージョンを識別するには en/gb/big5 を使用します。
INSERT INTO `zz_importer` VALUES (,'', '', 'en');
INSERT INTO `zz_importer` VALUES (, '', ' ', 'gb');
INSERT INTO `zz_importer` VALUES (,'', '', 'big5');
B. ユーザーが追加した質問の場合:
1. 次のように仮定します。ページヘッダーが UTF-8 であるため、ユーザーは簡体字中国語を使用しています。ユーザーのブラウザは utf-8 エンコード
でページを閲覧します。
2. 追加したデータベース自体は utf-8 モードで存在します。
3. データを追加するとき、gb を使用して言語バージョンをそれぞれ識別します
INSERT INTO `zz_importer` VALUES (,'', '', 'gb');
C.簡体字中国語と繁体字中国語が別々に提供されるか変換されるかという問題について
別々に提供されます - 多言語標準に準拠しており、柔軟性が高く、ISP に対する特別な要件はありません。
変換の提供 - 送信速度に影響があり、ISP は iconv 機能のサポートを提供する必要があります。
3. ユーザーのアクセス言語が統一されています
A. ユーザーが簡体字中国語バージョンを使用していると仮定します:
;
これはすべての言語バージョンに当てはまります。
B. language/gb の言語パッケージを呼び出します。
C. 言語フィールドが gb であるデータをデータベースで検索し、
を表示します。 D. ユーザーが情報を送信する場合は、上記の多言語データベースの質問 B を参照してください。