今日、面接官から、アラビア語を第 2 言語として PHP Web アプリケーションに実装する方法を尋ねられました。データベースとフロントエンドに Unicode エンコーディングを選択し、RTL に適したユーザー インターフェイス モジュールを設計することについて話しました。そして、彼はその答えにあまり満足していないようでした. 私は多言語システムについて何も知りません。その質問にどのように答えますか?
5 に答える
- サイトで UTF-8 エンコードを使用していることを確認してください。prakscant が述べたように、それでも絶対確実ではありません。
- 文字列 - ユーザーに表示される可能性のあるすべての文字列とフレーズをローカライズする際には、訓練を受ける必要があります。これは、エラー メッセージ、ステータス バー メッセージ、警告ボックス、ダイアログ ボックスなどを意味します。文字列マップまたはディレクトリ リストを作成して、キー (英語の可能性があります) で文字列を見つけることができます。
- ローカライズされた画像 - ボタン (テキストを含む) に画像を使用する場合、それらもローカライズする必要があります。何らかのキーで適切なカルチャの画像を見つけることができる画像マップまたはディレクトリ ファイルを作成する場合があります。
- レイアウト - アラビア語は右から左に記述されるため、テキストが正しく読み取られて表示されるようにサイトの外観を適切に処理するには、別の CSS ファイルが必要になる可能性があります。たとえば、サイドバーを画面の左側ではなく右側に配置したい場合があります。
- 日付形式 - カルチャ コードに基づいて日付をフォーマットし、日付に基づくフィルターが適切に解釈されるようにする必要があります。
- データベース照合 - データベースが UTF-8 または Unicode 形式でデータを格納していることを確認する必要があります。また、文字列を検索するクエリ内のフィルターについても注意する必要があります。ただし、これらの文字列が、アラビア語のユーザーが表示および変更できないシステム値でない限りです。
非常に重要なことは、言語固有の文字列と設定を柔軟にロードできる堅牢な言語マネージャーを作成することです。PHP では、UTF-8 ファイル形式であっても注意が必要です。これは、現在の PHP バージョンでは Unicode が完全にサポートされていないためです。ここでは、Unicode サポートで何が起こっているかについて詳しく読むことができます。
http://schlueters.de/blog/archives/128-Future-of-PHP-6.html
ローカライズされた書式設定、並べ替え - 照合、複数通貨、複数タイムゾーンのロジックなど、対処すべき問題は他にもたくさんあります。
すべてに UTF-8 を使用します。
php ファイル形式 -> UTF-8.
MySQL データベース -> UTF-8 Unicode。
この質問に対する私の回答をご覧ください:複数の言語 (英語、オランダ語、フィンランド語、フランス語、ハンガリー語、バングラ語、イタリア語、) SQL サーバーを使用した ASP.NET ! .
彼らがあなたの答えに満足しない理由がわからない. すべてのテキストに UTF-8 - 文字列/データベースなど。 別の CSS (rtl テキスト プロパティを設定するため) その他の考慮事項... 画像も rtl です。そのため、現在ナビゲーション バーなどに画像を使用している場合は、画像が rtl をロードすることに注意する必要があります。
それ以外は、アラビア語は他の言語と同様に別の言語です。唯一の違いは、双方向であることです。