PHP翻訳とウェブサイトの国際化ガイド
Yee
Aug 03, 2024
PHP 翻訳とウェブサイトの国際化
PHP ファイルの翻訳要件は通常、ウェブサイトや Web アプリケーションで多言語対応を実現するために必要です。これにより、ユーザーの言語設定に応じたコンテンツを表示することができます。
翻訳とプロジェクト実践
私たちは複数のプロジェクトでウェブサイトの国際化を成功させており、以下にその一つの方法を紹介します。
まず、私たちはO.Translatorを選んで PHP ファイルの翻訳を行いました。後ほどその具体的な使い方を簡単に紹介します。
O.Translator はオンラインのドキュメント翻訳プラットフォームで、PHP ファイルの翻訳をサポートし、世界の 70 以上の言語に翻訳することができます。
O.Translator を使用することで、PHP ファイルを直接多言語に翻訳し、プロジェクト内でユーザーが選択した言語に応じて動的に読み込むことができるため、ウェブサイトの多言語対応を実現できます。
以下は具体的な実践方法です:
ディレクトリ構造
プロジェクトのディレクトリ構造は以下のようになっていると仮定します:
project_root/
├── index.php
├── example.en.php
├── example.cn.php
├── example.fr.php
文書ファイルの作成
まず、1つの言語のPHP静的文書ファイルを作成して編集します。ここでは中国語を例にします。
example.cn.php
他の言語に翻訳
アクセスO.Translator ホームページ。
翻訳開始ボタンをクリックして、ログインを完了します。
ファイルをアップロードし、必要に応じて言語を選択し、翻訳開始をクリックします。
翻訳が完了するのを待つと、目的の言語の翻訳が得られます。
example.en.php
O.Translator は無料プレビューを提供しており、無料プレビューでは一部の内容が翻訳され、ユーザーが参考にできます。満足した場合にのみポイントを支払って残りの内容を翻訳します。
これは、O.Translator を選ぶ理由の一つです:満足しない商品に対して支払う必要がないこと。
主ファイル(index.php)
主ファイルでindex.php
ユーザーの言語選択に応じて対応する言語ファイルをロードします。
<?php
// ...
$lang = isset($_GET['lang']) ? $_GET['lang'] : 'en';
switch($lang) {
case 'en':
include('example.en.php');
break;
case 'cn':
include('example.cn.php');
break;
case 'fr':
include('example.fr.php');
break;
default:
include('example.en.php');
break;
}
// ...
?>
html テンプレートで以下を使用します:
<!DOCTYPE html>
<html lang="<?php echo $lang; ?>">
<head>
<meta charset="UTF-8" />
<title><?php echo $_['heading_home']; ?></title>
</head>
<body>
<header>
<h1><?php echo $_['heading_home']; ?></h1>
<nav>
<ul>
<li><?php echo $_['heading_about']; ?></li>
<li><?php echo $_['button_read_more']; ?></li>
</ul>
</nav>
</header>
</body>
</html>
補足説明
- ユーザーの言語選択を取得
ここでは GET パラメータ(例:?lang=en)を通じてユーザーの選択した言語を取得することを仮定します。他の方法、例えばセッション、クッキー、またはブラウザの言語設定を使用することもできます。
- パフォーマンスの問題
複数の PHP ファイルを頻繁にロードおよび解析する場合、一定のパフォーマンスオーバーヘッドが発生する可能性があります。
- 拡張性
言語の種類や文書の数が非常に多い場合、複数の言語ファイルを管理することが複雑になる可能性があります。