PHPのクラスとは?オブジェクト指向プログラミングの基本を解説
PHPでは、オブジェクト指向プログラミング(OOP)を取り入れることで、クラスを使った効率的なコード設計が可能です。
クラスは「オブジェクトの設計図」のようなもので、複数のプロパティ(変数)やメソッド(関数)をひとまとめにできます。
この記事では、PHPのクラスの基本構文や使い方をわかりやすく解説します。
クラスの基本構文
class クラス名 {
// プロパティ(変数)
// メソッド(関数)
}
例:
class Person {
public $name;
public $age;
public function greet() {
echo "こんにちは、私は " . $this->name . " です。";
}
}
クラスからオブジェクトを作成する
$taro = new Person();
$taro->name = "太郎";
$taro->age = 25;
$taro->greet(); // こんにちは、私は 太郎 です。
new
を使ってクラスから「オブジェクト(実体)」を生成し、->
でプロパティやメソッドにアクセスします。
コンストラクタ(__construct)
クラスを作成したときに自動で呼ばれる関数です。初期値を設定するのに使われます。
class Person {
public $name;
public function __construct($name) {
$this->name = $name;
}
public function greet() {
echo "こんにちは、" . $this->name . "です。";
}
}
$taro = new Person("太郎");
$taro->greet(); // こんにちは、太郎です。
アクセス修飾子(public, private, protected)
public
:どこからでもアクセス可能
private
:そのクラスの中だけ
protected
:そのクラスと継承先のみ
クラスの継承(extends)
あるクラスをベースに、新しいクラスを作ることができます。
class Animal {
public function speak() {
echo "なにかが鳴いています。";
}
}
class Dog extends Animal {
public function speak() {
echo "ワンワン!";
}
}
$dog = new Dog();
$dog->speak(); // ワンワン!
まとめ
- クラスはオブジェクトの設計図
new
でオブジェクトを生成
$this
を使って自分自身のプロパティ・メソッドにアクセス
__construct
で初期値を設定可能
- アクセス制御でデータの保護ができる
extends
によって継承も可能
クラスを活用することで、プログラムの構造を整理し、再利用性や保守性を高めることができます。
小さなクラスから始めて、オブジェクト指向の考え方に慣れていきましょう。