PHPのスクリプトはHTML内に挿入して、フォームから入力された値を演算したり、データベースに格納したり、アクセスした値をWebページに表示することなどが可能です。
HTMLだけでは静的なウェブページしか作れませんが、PHPを埋め込むことによって、動的なWebページを作成することが可能となります。今回は、HTML内でPHPスクリプトを実行する方法を紹介します。
HTML内でPHPスクリプトを実行する前に(環境)
HTML内でPHPを動作させる為には、Webサーバー環境が必要となります。
環境構築の一例を記載しますので参考にしてください。
- Webサーバーをインストールしたディレクトリを開き、「htdocs」フォルダを探してください。
- 「htdocs」フォルダ内にhtmlファイルを作成し、下記の「記載例」に書かれたコードを貼り付けてください。
- Webサーバーを立ち上げてください。
- 2 の手順で作ったファイルをブラウザで開いて確認してください。
下記のURLにアクセスすることで確認できます。
http://localhost/ファイル名
HTML内でPHPスクリプトを実行
PHPをHTML上で実行する場合は、<?php ?>内にPHPのコードを書きます。
PHP
<html>
<body>
<?php ここにPHPの処理を記載する ?>
</body>
</html>記載例
PHP
<html>
<body>
<?php echo '出力'; ?>
</body>
</html>出力結果
PHP
出力▼画面上に「出力」と表示されないとき
※PHPが動かないときは、以下を確認してみてください。
- localhost にアクセスしている?
HTMLファイルと異なり、PHPはサーバー上で動かす必要があります。
http://localhost/ファイル名 にアクセスして確認してみてください。 - サーバーは動いている?
PHPはサーバー上で動かす必要があります。サーバーが動いているか確認してみましょう。
例えばxamppならば、画像のボタンが「Stop」になっているか確認してみてください。

- .htaccess の設定を確認する
htmlファイルを配置したディレクトリ(もしくはその親ディレクトリ)に.htaccessがあること。
.htaccessに下記の記述があること(.htmlのままPHPが動作するようにする設定です)
AddHandler application/x-httpd-php .html
下記の様に、一部を変数に格納して文字列として出力することも可能です。
PHP
<?php
$language = 'PHP';
echo "<p> $language を学びましょう</p>";
?>出力結果
PHP
<p> PHP を学びましょう</p>出力結果(ブラウザイメージ)

エンジニアからのアドバイス
PHPはサーバーサイド側の言語です。
HTMLやCSSとは異なり、「サーバーを動かさないとブラウザで挙動を確認できない」「サーバーサイドの設定が間違っていると予想外の動作をする」
「HTMLでは書かれた内容はいつ見ても変わらないけれど、PHPで書かれた部分は変数を使えば表示される中身を変えることができる」など、今まで学んできた知識とは異なる挙動をします。
今回作ったページを利用して、以下項目の挙動を確認してみましょう。
- サーバーを動かさないと実際にどうなるのか?
- 変数に代入した値を変えると、画面上の表示も本当に変わるのか?
- PHPの動作環境とは?
- 何を準備すれば動くのだろう?
