0

Codeingiter/PHP アプリに多言語サポートを追加しており、画像を処理するための適切なアプローチを決定しようとしています。

テキストについては、i18n と Codeingiter のネイティブ Language クラスを使用しています。

動的画像選択のための提案されたコード:

if ($this->uri->segment(1) == 'br') { Brazilian image link } else { English image link }

CSS ファイル内の画像については、PHP ファイルとして処理し、上記と同じコードを使用する予定です。

このアプローチに潜在的な欠陥はありますか? これらがより効率的なアプローチであるかどうか疑問に思って、面倒に思えます。

4

2 に答える 2

1

言語をセッションに保存し、URI のセグメントに従って変更することをお勧めします。ifコンストラクターでこれを実行すると、コードが大幅に節約さelseれます。

画像を動的にロードするには、次のような命名規則を使用します: imagename_lang.ext、IE: homepage_br.jpg

ロードは次のようになります:echo "homepage_$this->session->userdata('lang').jpg"または、最初に次のように変数に格納する場合: echo "homepage_$lang.jpg"

CSS 内の画像の場合、CSS ファイルを 3 つに分割します。

  1. style.css - 言語に依存しないすべてのスタイルを保存します。
  2. style_en.css - 英語版のすべての画像を保存します。
  3. style_br.css - ブラジル バージョンのすべての画像を保存します。

この方法では、適切な CSS ファイルをインクルードするときに、言語のチェックを 1 回行うだけで済みます。

于 2012-05-01T08:07:29.793 に答える
0

PHP やその他のスクリプト言語を使用して可変 CSS を使用する方法がわかりません。このページはあなたにいくつかのアイデアを与えるかもしれません。

CSS ファイルに変数を追加する方法

于 2012-04-30T23:23:28.407 に答える