php heedocとphpwindのテンプレートの技術の使用方法は結びます。
PHPのドキュメントでは、echoは以下のコマンドで複数行の文字列を出力することができます。また、変数は自動的に置換されます。PHPコードです。
echo <<<END
This uses the "here document" syntax to output
multiple lines with $variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!
END;
上のEND終符は自分で決められます。Phopwindでは、「EOT」を使って終わります。ただし、このENDは一行の先頭にこそ有効である必要があります。これはHeredoc技術の限界です。phpwindのテンプレートファイルは、一般的にtemplatewindディレクトリの下に保存されています。BBSディレクトリには、require文を使ってこのテンプレートファイルが含まれています。実はこのテンプレートファイルは対応するPHPファイルの一部として実行されていますので、PHPLibのような必要はありません。 Templateのようにテンプレート解析をしてから実行するプロセスが必要です。heedocの内容をDreamWeaverのようなエディタに正しく認識させるためには、「参照してください」というウェブデザインを実現するためには、heredocにコメントを追加する必要があります。例ファイルは以下の通りです。PHPコード
<!--
<?php
print <<<EOT
-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Untitled Document</title>
</head>
<body>
<!--
$name = ' ';
print <<<EOT
-->
Hello,$name!
<!--
EOT
print <<<EOT
-->
</body>
</html>
<!--
EOT;
?>
-->
のようなテンプレートファイルは、実際には標準的で、実行可能なPHPファイルです。しかし、このようなPHPファイルのHTML形式はDreamWeaverにおいて正確に表示され、すべてのPHPコードはHTMLコメントとして扱われ、出力時には出力されません。例えば、上記のファイルはDreamWeaverで、PHPコード
Hello,$name!
と表示されています。このように、ページを設計する時、DWの可視化画面を使って、界面の修正、美化などの作業ができます。完全なコードとHTMLの分離は実現されていないが、少なくとも補助的な設計手段が提供されている。