概要
クラスは 「関連するデータ (プロパティ) と振る舞い (メソッド) を 1 つの設計図にまとめる」 ための仕組みだ。ユーザー情報を扱うときに $name $age $city といった変数を関数の引数で毎回受け渡ししていると、変数の組み合わせが散らばって追跡が難しくなる。クラスにまとめておけば「ユーザーという 1 つのまとまり」として扱えるようになり、関係するデータと処理がコード上の同じ場所に集まる。
PHP では class クラス名 { ... } の形でクラスを宣言し、中に public string $name; のようにプロパティを並べる。PHP 7.4 以降はプロパティに型宣言を付けられるようになり、User のインスタンスの $name には必ず文字列が入ると設計図に書けるようになった。これは関数引数の型宣言 (前章) と同じ考え方で、型のミスマッチを早期に検出できる。
このチャプターでまず腹落ちさせたいのは 「クラスの定義だけでは何も実行されない」 という性質だ。class User { ... } を書いてもインスタンスを作る (next chapter) までは画面に何も出ない。クラスは「タイ焼きの 型枠 」で、実際のタイ焼きは new を実行して初めて 1 個生まれる、というメンタルモデルを最初に固める。
学習目標
class クラス名 { ... }の形でクラスを宣言できる- クラスの中にプロパティ (
public 型 $名前;) を並べられる - 「定義しただけ」では何も実行されないことを理解する
ドリル
| no | 内容 |
|---|---|
| 01 | User クラスを定義する (name と age の 2 プロパティ) |
📝 演習: ドリル 01 — User クラスを定義する
問題
User という名前のクラスを定義してください。プロパティは次の 2 つ:
public string $name;public int $age;
クラスを定義したあと、最後に echo "OK\n"; を実行してください。
期待される出力:
OKヒント
class User { ... }で囲む{ }の中に 2 つのプロパティを並べる- クラス定義のあとに
echo "OK\n";を書く - 「定義しただけ」では何も出力されない。
echoを忘れずに