Written by Kasumi

【PHP】コンストラクタ関数を使って、クラスのインスタンス生成時に変数を初期化する方法

PHPでコンストラクタ関数を使い、クラスのインスタンス化時に変数を初期化。

引数に渡した任意の値を変数に設定したい。

本記事ではこのような悩みを解決します。

コンストラクタ関数を使って初期化する

<?php 
  // クラス
  class User {
    
    //変数
    public $name;
    public $age;

    //コンストラクタ関数 変数を初期化。
    public function __construct($name, $age) {
      $this->name = $name;
      $this->age = $age;
    }
    
    //メソッド
    public function intro() {
      echo $this->name . 'です。' . '年齢は' . $this->age . '歳です。';
    }
  }

  //クラスをインスタンス化。
  $user = new User('kasumi','30');
  // メソッドを呼び出す。
  $user->intro();
  //kasumiです。年齢は30歳です。
?>

コンストラクタ関数を使って、変数を初期化するコード例です。

コンストラクタ関数の使い方は以下の通りです。

public function __construct(引数) {
$this->変数名 = 引数;
}

コンストラクタ関数は、クラスの定義の中でfunctionの後に __constructという名前で定義されます。

コンストラクタ関数内で$thisを使い変数を呼び出し。値を引数に設定する事でインスタンス生成時に変数を初期化。

引数に設定した任意の値を変数に代入できます。

本コード例ではコンストラクタ関数でname変数とage変数を初期化。

インスタンス時に任意の名前と年齢を引数に設定。

上記値を使ったメソッドを呼び出してます。

以上で実装完了です。

まとめ

PHPでコンストラクタ関数を使い、クラスのインスタンス生成時に変数を初期化する方法について紹介しました。

以上で解説を終わります。

目次

関連記事

PHP

【PHP】変更不可の変数(定数)を定義する二つの方法

2023.02.05
1126
PHP

【PHP】配列から最大・最小値を求める方法

2023.03.16
1057
PHP プログラミング

Use of undefined constant campaign – assumed ‘文字列'(this will throw an Error in a future version of PHP) inエラーがでる場合の対処方法

2022.01.29
2274
PHP

PHPで現在位置からルートまでのディレクトリパスを取得・出力する方法

2022.12.21
1949