PHP マニュアル
前のページ |  | 次のページ

# 第 5章基本的な構文

# HTML からの脱出

PHPはファイルからPHPコードの開始を示す特別なタグを見つけるまでは 単純にその内容を出力します。PHPコードの開始を示すタグが見つかると PHPはコードの終了を示すタグとの間にあるコードを実行します。この メカニズムによりPHPコードをHTMLの中に埋め込むことが出来るのです。 つまり、PHPタグの中にある文字列はPHPコードとして解釈されますが、 外にある文字列(つまり普通のHTML)はあくまで単純に出力されるだけ ということです。

PHPコードのブロックであることを宣言するタグは4種類あります。 これらのうちの2つ((<?php. . .?>と<script language="php"> . . .</script>)は常に使用することが出来ます。その他の タグは`php.ini`設定ファイルでonまたはoffに するとが出来ます。短縮型のタグ(<?. . .?>)とASP形式の タグは便利なのですが、長いタグに比べると移植性に欠けます。 また、PHPコードをXMLやXHTMLに埋め込もうとする場合にはXMLの 規格に従うために<?php. . .?>形式を使用する必要があるでしょう。

PHPでサポートされるタグは以下のとおりです:

例 5-1. HTMLからの脱出法
`1. <?php echo("XHTMLまたはXMLドキュメントを処理したい場合は、この方法が良いでしょう\n"); ?> 2. <? echo ("この方法は最も簡単で、SGMLの処理命令です\n"); ?> <?= expression ?> は "<? echo expression ?>"のショートカットです。 3. <script language="php"> echo ("(FrontPageのような) いくつかのエディタ は処理命令を好み ません"); </script> 4. <% echo ("オプションでASP形式のタグを使用可能です"); %> <%= $variable; # これは、"<%echo .." のショートカットです。%>`

最初の方法が推奨されます。なぜなら、 XHTMLのようなXMLに適応したコードでPHPを使用できるからです。

2番目の方法は、短縮型のタグが有効な場合にのみ利用可能です。 短縮型のタグは、short_tags() 関数を使用するか (PHP 3のみ)、 PHPの設定ファイルに short_open_tagを設定する か--enable-short-tags オプションを configure に 指定して PHP をコンパイルすることにより、有効にできます。 php.ini-distでは、デフォルトでこのオプションは有効となっていますが、 短縮形のタグの使用は推奨されません。

4番目の方法は、ASP型式のタグが asp_tags の設定により有効となっ ている場合にのみ使用可能です。

> 注意: ASP 型のタグのサポートは、3.0.4で追加されました。

> 注意: 再利用されるか、または、自分の制御下にないPHPサーバで運用される アプリケーションまたはライブラリを開発する場合、短縮型のタグの 使用は避けるべきです。これは、短縮型のタグがターゲットサーバー でサポートされていない可能性があるためです。 可搬性のある、再配布可能なコードでは、短縮型のタグを使用しない ようにして下さい。

ブロックの終了タグは、直後に改行がある場合、それを含んだものになります。 また、終了タグには自動的にセミコロンが含まれていると認識されます。 従ってPHPコードの最終行にはセミコロンを記述する必要はありません。 ファイル終端におけるPHPブロックの終了タグはオプション(任意)です。

PHP は、次のような構造を使用可能です。

例 5-2. 高度なエスケープ処理
`<?php if ($expression) { ?> <strong>This is true.</strong> <?php } else { ?> <strong>This is false.</strong> <?php } ?>`

このコードは期待通りに動作します。これは、PHPが?> および <?phpの中のテキストをecho()命令として処理す るためです。この例はもちろん不自然なものですがPHPモードを抜ける ことでテキストを出力させる方法は、それらをecho() やprint()等を使って出力させるより便利です。

前のページ | ホーム | 次のページ
言語リファレンス | 上に戻る | 命令の分離