— boreal-kiss.com

PHP HACKSの表紙にタケコプターが描いてある

PHP Hacks―プロが教えるWebプログラミングテクニック
PHP Hacks (Hacks)

PHPソース内にHTMLタグを書く場合(例えば<form>や<table>)、HTMLタグをechoさせるか、PHPソースを一旦閉じてしまってからPHPソース外にHTMLタグを書かないといけない。当たり前だけどこれが意外とかったるいイメージがあって、フォームやテーブルを使いたくなくなることがある(特にテーブル)。んで、お年玉で買ったこの本にね、面白い書き方がしてあってちょっと感動した。

例えば、PHPソース内に<form>タグを書きたい場合、form.php(名前適宜)にフォームだけを表示するよう以下のように記述;


<?php

function show_form(){

?>

<form>フォーム内容</form>

<?php

}

?>

次に、以下のindex.php(名前適宜)のフォームを表示させたい場所にshow_form()を呼び出す;


<html>
<head>
<?php include('./form.php'); ?>
</head>

<body>
<?php
/* PHPソース色々 */
/* PHPソース色々 */

show_form(); //ここに上記フォーム内容が表示される

/* PHPソース色々 */
/* PHPソース色々 */
?>
</body>
</html>

こういう風に書く利点は

  1. PHPソース内に関数を呼ぶだけでフォーム(やテーブル)が書ける(index.php)。
  2. PHPとHTMLが入り乱れるような煩雑なソースにならない(index.php)。
  3. Dreamweaverで作業する時にフォーム部分が色分けされていてわかりやすい(form.php)。

ミソはform.phpの書き方かな。ちなみにこれはHACKSでもなんでもない部分なんだけど、煩雑になる部分を外部ファイルにするとか思いつかなかったな。フォームの主要要素(actionやinput内容)を引数に持つ関数やテーブルのレイアウトに関する情報を引数に持つ関数を作ったら汎用性がありそう。

0 comments
Submit comment