広告スペース(バナー)
🐘PHP レッスン
基本文法の基礎8▾
データ構造とオブジェクト指向7▾
構文の基本を深める9▾
関数とデータ構造の応用9▾
アルゴリズムとテストの基礎8▾
文字列・数値操作の応用8▾
実務で役立つ機能8▾
レッスン 9 / 68
クラスを使ってみよう(オブジェクト指向)
このレッスンでは、PHPのclass構文を使ったオブジェクト指向プログラミングの基本を学び、共通の性質を持つデータをまとめて扱えるようになることを目標にします。「PHP class 使い方」で調べている方向けです。
PHPもclassでクラスを定義できます。__constructは初期化用の特別なメソッド、->でプロパティやメソッドにアクセスします。「動物の設計図」があれば「犬」「猫」といった具体的なインスタンスを何個でも作れるイメージです。
サンプルコードでは、Animalクラスに$nameと$soundというプロパティを持たせ、speak()メソッドで鳴き声のメッセージを組み立てています。new Animal("犬", "ワン")で作ったインスタンスに対して、->を使ってメソッドを呼び出している点も確認してみましょう。
初心者がよくつまずくのが、$thisの使い方です。クラスの中で自分自身のプロパティにアクセスするには$this->nameのように書く必要があり、単に$nameと書くだけでは正しく参照できません。この違いに最初は戸惑うことが多いです。
WordPressのようなCMSの内部でも、この仕組みが広く使われています。PHP 8以降ではコンストラクタプロモーションという、より簡潔にプロパティを定義できる書き方も追加されました。
📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください
🧪 このサイトではPHPを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。
🎯
ここまでできればゴール達成!
複数のキャラクターを管理する、簡単なミニゲームの土台が作れるようになります。
複数のキャラクターを管理する、簡単なミニゲームの土台が作れるようになります。
広告スペース(バナー)
広告スペース(記事内)