PHPのメソッドとは?クラス内の関数の定義と使い方を解説
PHPでオブジェクト指向プログラミングを行う際、クラスの中に定義する関数のことをメソッドと呼びます。
メソッドは、オブジェクトに関連する「処理(動作)」を定義するもので、外部から呼び出して機能を実行することができます。
メソッドの基本構文
class クラス名 {
public function メソッド名(引数) {
// 処理内容
}
}
例:
class Greeting {
public function sayHello() {
echo "こんにちは!";
}
}
メソッドの呼び出し
メソッドは、クラスから作成したオブジェクトに対して ->
演算子を使って呼び出します。
$greet = new Greeting();
$greet->sayHello(); // こんにちは!
引数と戻り値
メソッドには引数を渡したり、戻り値を返すこともできます。
class Calculator {
public function add($a, $b) {
return $a + $b;
}
}
$calc = new Calculator();
echo $calc->add(3, 5); // 8
アクセス修飾子
メソッドの前には、アクセス修飾子(public
, private
, protected
)を指定して、外部からのアクセス可否を制御します。
public
:どこからでもアクセス可能
private
:同じクラスの中だけ
protected
:同じクラスと継承クラスの中だけ
$thisによるプロパティとの連携
メソッド内でクラスのプロパティにアクセスするには、$this
を使います。
class User {
public $name;
public function showName() {
echo $this->name;
}
}
$user = new User();
$user->name = "花子";
$user->showName(); // 花子
staticメソッド
static
キーワードを使うと、オブジェクトを生成せずに呼び出せるメソッドになります。
class Tool {
public static function sayHi() {
echo "やあ!";
}
}
Tool::sayHi(); // やあ!
まとめ
- メソッドはクラス内に定義された関数
public function メソッド名()
で定義
->
演算子でオブジェクトから呼び出す
- 引数や戻り値の指定も可能
$this
を使ってプロパティと連携
static
メソッドはクラス名から直接呼び出せる
メソッドはクラスの振る舞いを定義する重要な要素です。
実際にクラスを作り、メソッドを組み合わせながらオブジェクト指向の考え方を身につけていきましょう。