1


0

PHPで条件(デザイン)とは別のデザイン(CSS)を処理する標準的な方法はありますか?

私はWebベースのアプリケーションで開発者と協力してきました。 私は主にhtmlとcssの経験があり、重い作業が終わったので、プログラムの設計要素の改善を始めたいと思っています(それは理想的な状況ではなく、完全な世界では、すべての設計要素は最初から考慮されていましたが、プロジェクトに取り組んでいる人は、それが常にそのようになるとは限らないことを知っています:-D)

広範なPHP条件付きで作業するときに、CSSと一般的なレイアウト構造を処理する「標準」の方法があるかどうか興味があります。 ページの1つの領域の例を次に示します。

$print_data .= 'My subscription:  ';

if($period3=="1 M") {
  $print_data .= "$".$amount3." a month.
";
  $print_data .= "Billing date:   Monthly on the " . date("jS", $subscr_effective_date_string) .".

Modification Options:
";
  $print_data .= '



';
}

elseif($period3=="6 M") {
  $print_data .= "$".$amount3." every 6 months.
";
  $print_data .= "Billing date:   Every 6 months on " . date("m/d", $subscr_effective_date_string) ." and " . date("m/d",$subscr_effective_date_add_6mo_string) .".

Modification Options:
";
  $print_data .= '


';
}

elseif($period3=="1 Y") {
  $print_data .= "$".$amount3." every year.
";
  $print_data .= "Billing date:   Yearly on the " . date("m/d", $subscr_effective_date_string) .".

Modification Options:";
  $print_data .= '


';
}

$print_data .= '';

要するに、上記の内容を「

そして、各条件を別々の ``にする

条件に応じて。

この種のことは、通常、すべてインラインで処理されますか?

ありがとうございます。 Joel

1 Answer


4


Uf、それはいです。 それが、ここ数年でWeb開発がModel-View-Controller(MVC)アプローチに移行しているほとんどの理由です。 理想的には、プレゼンテーションマークアップ(上記のスープのhtmlタグ)が1つのファイルにあり、それを別のファイルに取り込むロジックがあります。 PHPでこれを行う最も一般的な方法の1つは、http://www.smarty.net/ [Smarty]テンプレートエンジンを使用することです。

その間、少なくとも上記のコードはクリーンアップする必要があります。$ amount3の値と請求入力ボタンに表示されるテキストを把握し、HTMLを1か所で繰り返すのではなく、1か所で出力するだけです。ケース(そして、クリーンさと少しのセキュリティ強化のために文字列を詰め込むのではなく、http://us2.php.net/manual/en/function.sprintf.php [sprintf]を使用するとよいでしょう)。