2014/08/07 ロジックとデザインの分離(送信した値を出力)
【本日のWeb制作 学習メモ】
[PHP] ロジックとデザインの分離
PHPをHTMLに組み込む際、ロジックとデザインを分離してコーディングするように配慮する。
理由:
チームで分業の場合など、WEBデザイナーがPHPを理解できるとは限らない。
ソースのわかりやすさも考え、なるべくロジックとデザインは分離する。
index.html
入力値を送信
<!DOCTYPE html> <html> <head> <title>TEST</title> <meta charset='utf-8'> </head> <body> <form action="ex2.php" method="POST"> <input type="text" name="t1"> <input type="submit" name="送信"> </form> </body> <html>
<?php ///税込の金額を表示 function t($money){ echo $money * 1.08; } ?> <!DOCTYPE html> <html> <head> <title>TEST</title> <meta charset='utf-8'> </head> <body> <?php echo t($_POST['t1']); ?> </body> </html>
ex2.php(修正後)
原則bodyの中には出力結果のみとする
(ロジックとデザインの分離)
<?php //税込の金額を表示 function t($money){ return $money * 1.08; //echo $money * 1.08; } //$moneyへ税込金額を代入 $money = t($_POST['t1']); ?> <!DOCTYPE html> <html> <head> <title>TEST</title> <meta charset='utf-8'> </head> <body> <h1> <?php echo $money; ?> </h1> </body> </html>
参考サイト
【ロジックとデザインの分離について】
こちらのサイトにも説明があります。
ブログを作る - PHP入門 - ポンクソフト :
http://ponk.jp/php/basic/blog
Smarty - ロジックとデザインの分離を考えるならこんなテンプレートエンジンを使うのも一つです
テンプレートエンジンでロジックとレイアウトを分離する(Smarty)[PHP] - Build Insider :
http://www.buildinsider.net/web/bookphplib100/040
【プログラム未経験からECサイトを作ってみるなら】
以下の2サイトが参考になるかも