第1回 PHPのコードとHTMLタグ ご意見・ご感想
先生 さてこれからPHPの勉強会を始めましょう!
たぬき 先生!PHPって何?
先生 PHPって…「PHP:Hypertext Preprocessor」の略で、HTMLの中にプログラムが書ける便利な言語のこと!
たぬき ふ〜ん。でもHTMLの中にプログラムを書くとなんで便利なん?
先生 PerlはHTMLコードをプログラムから生成して表示するでしょ?
PHPはHTMLの中の必要な部分だけをプログラムで動的に変更できて、Webデザインとの親和性がいいねんよ。
たぬき へぇWebデザインと相性いいんや
先生 そう。ではさっそくサンプルを作ってみよう!
例えばこんな風に2x2のテーブルを表示して列番号行番号を表示しようと思ったら・・・

図1.サンプル実行結果
先生  こんなソースで表示できるねん。
001:  <html>
002:  <body>
003:  <table border="1">
004:      <tr>
005:          <td><?php echo ("11");?></td>
006:          <td><?php echo ("12");?></td>
007:      </tr>
008:      <tr>
009:          <td><?php echo ("21");?></td>
010:          <td><?php echo ("22");?></td>
011:      </tr>
012:  </table>
013:  </body>
014:  </html>
図2.sample1.php
たぬき でもなんかこのソース、ベタベタな感じ…。
先生 そやなぁ…プログラマーやったらもっとスマートに書きたい気もするなぁ。
これでどう?
001:  <html>
002:  <body>
003:  <table border="1">
004:  <?php
005:  for ($i=1; $i<=2; $i++) {
006:      echo "<tr>";
007:      for ($j = 1; $j<=2; $j++) {
008:          echo "<td>" . $i . $j ."</td>";
009:      }
010:      echo "</tr>";
011:  }
012:  ?>
013:  </table>
014:  </body>
015:  </html>
図3.sample2.php
たぬき いい感じ!この方が「ぷろぐらまぁ」って感じがする。
先生 そやけど、これやと問題があるねん。
デザイナーさんが使うソフトでこのコードを見ると、こんな風になってしまうねん。

図4 sample2.phpをDreamwaverで開いたところ
たぬき テーブルが見えなくなってる…
先生 そう。エラーになってしまうこともあるねん…。
だからデザイナーさんと一緒に仕事をする時は、sample1.phpみたいにベタな感じで書いた方がいいねん。
これならちゃんと見れるでしょ?ほら。

図5 sample1.phpをDreamwaverで開いたところ
たぬき そっかぁ。
僕は「シュールなコードを書く!」がモットーやけど、デザイナーさんにわかりやすくするためやったら、まけとったろか。
先生 うん。
たぬきくんの「シュールなコード」もいいねんけど、デザイナーさんにお願いした方が「エレガントなページ」が作れるからね。
じゃあ今日はこれでおしまい。
たぬき え〜これだけ?もっと勉強したかったなぁ。
先生 いやいや.教えるのは大変なんやから!
たったこれだけ教えるためにも先生はずいぶん苦労して準備したんよ。
たぬき しゃあないなぁ。今日はこれくらいで勘弁しとったろ。
先生 うん!実はデザイナーさんとの分業を考えると、PHPの「HTMLの中にプログラムが書ける便利な言語」というのがほんとに便利かどうかビミョーなんよね。
それで分業する時に便利な「テンプレート」っていうのがあるから、次回はSmartyを勉強してテンプレートを使ってみましょう。

インフォメーションへ戻る 第1回 PHPのコードとHTMLタグ コラム
  第2回 HTML_QuickFormを使ってみよう
  第3回 HTML_QuickFormを使ってみよう(パート2) HTML_QuickForm Memo
  第4回 Smartyを使ってみよう HTML_QuickForm Menu
  第5回 HTML_QuickFormとSmartyを使ってみよう HTML_QuickForm Smarty Tips
  第6回 HTML_QuickFormとSmartyを使ってみよう(パート2) Mojavi Memo
  第7回 実践編 HTML_QuickFormとSmartyを使ってみてどうよ? Ajax Memo
  第8回 HTML_QuickForm_Controller大好き!
  第9回 Mojaviのまとめ
  第10回 Ajax使ってみました
  第11回 PHPEclipse開発環境設定
  第12回 Eclipse+PHPIDEインストール記
  第13回目 PHPIDEによるデバック
  第14回目 Selenium IDEを使ってみました
  第15回目 PDT(旧 PHPIDE)のインストール、デバック