概要
PHP は 1995 年に Rasmus Lerdorf によって生まれた サーバーサイドのプログラミング言語 で、現在は WordPress / Laravel / EC-CUBE など世界中の Web サイトで動いている。Web のしくみと深く結びついているため、最初に「どこで・どうやって動くか」を理解することが、この後すべての学習の土台になる。
ここでよくある勘違いは「PHP はブラウザで動く」というもの。これは間違いで、PHP コードを実行するのは サーバー側 だ。ブラウザは PHP の結果として生成された HTML を受け取って表示するだけで、.php ファイルそのものを開いて実行することはできない。JavaScript と違う最大のポイントがここ。
flowchart LR
Browser["🌐 ブラウザ"] -->|リクエスト| Server["🖥️ Web サーバー"]
Server -->|.php 実行| PHP["⚙️ PHP"]
PHP -->|HTML 生成| Server
Server -->|HTML 返却| Browserこの章では、サーバーで動く PHP を 自分のマシンで php コマンドを使って直接実行する ところから始める。サーバーを立てる前に、まず手元のターミナルで「PHP が動いた」という体験を作っておくと、後で php -S で Web サーバーを立てた時に「あ、さっきの php コマンドが裏で動いてるんだ」と腹落ちしやすい。
学習目標
このチャプターが終わると、次のことが言えるようになる:
- PHP は サーバーで動くプログラミング言語 である
- ブラウザでは動かない (JavaScript と違う点)
.phpファイルをphpコマンドで実行できる
📝 演習: ドリル 01 — はじめての PHP 実行
問題
starter.php の中身を見て、そのまま php コマンドで実行してください。
期待される出力:
動いた進め方
submission.phpを作って (starter.phpをコピーしても良い)、中身を編集するphp submission.phpで実行して動いたと出ることを確認
ヒント
<?php ?>のタグに囲まれた部分だけが PHP として実行されるechoの後ろにダブルクォートで文字列を書く- 文の最後にセミコロン
;をつける
📝 演習: ドリル 02 — Hello World
問題
echo を使って 3 つの行 をこの順番で出力するプログラムを書いてください。
期待される出力:
Hello
World
PHP進め方
submission.php(またはstarter.php) にechoを書くphp submission.phpで 3 行出るか確認
ヒント
echo "Hello\n";のように\nを入れると改行\nを使うときは ダブルクォート で囲む (シングルクォートだと改行されない)echoを 3 回書いてもいいし、1 つの文字列にまとめてもいい
✏️ クイズ 1 / 3
PHP コードはどこで実行される?
💡 サーバー側で PHP インタプリタが動き、結果として HTML を返します。ブラウザは HTML を受け取って表示するだけです。
✏️ クイズ 2 / 3
`.php` ファイルはブラウザで直接開ける?
💡 ブラウザは PHP を解釈できません。サーバー経由で実行された結果の HTML だけを受け取ります。
✏️ クイズ 3 / 3
PHP コードを CLI で実行するコマンドは `___` です。
💡 `php hello.php` のように `php` コマンドにファイルを渡して実行します。