【PHP8.x】__constructメソッドの使い方

__constructメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

『__constructメソッドは、新しいArrayObjectオブジェクトを生成し、初期化するメソッドです』 このメソッドは、new ArrayObject()のようにクラスのインスタンスが生成される際に自動的に呼び出される、コンストラクタと呼ばれる特別なメソッドです。第一引数には、オブジェクトの元となる配列やオブジェクトを指定します。ここで渡されたデータが、新しく作成されるArrayObjectインスタンスの内部データとなります。この引数は省略可能で、その場合は空のオブジェクトが生成されます。第二引数には、オブジェクトの振る舞いをカスタマイズするためのフラグを整数値で指定します。例えば、定数ArrayObject::ARRAY_AS_PROPSを指定すると、配列のキーをオブジェクトのプロパティとして $obj->key の形式でアクセスできるようになります。第三引数では、foreachなどでオブジェクトの要素を繰り返し処理する際に使用するイテレータのクラス名を指定できますが、通常はデフォルト値のままで問題ありません。このメソッドにより、通常の配列の利便性とオブジェクトの拡張性を兼ね備えたインスタンスを柔軟に設定し、作成することができます。

構文(syntax)

1public __construct(array|object $array = [], int $flags = 0, string $iteratorClass = ArrayIterator::class)

引数(parameters)

object|array $array = [], int $flags = 0, string $iteratorClass = ArrayIterator::class

  • object|array $array = []: 初期化する配列またはオブジェクト。省略した場合は空の配列として初期化されます。
  • int $flags = 0: ArrayObjectの動作を制御するフラグ。ArrayObject::STD_PROP_ORDER, ArrayObject::USE_KEY_AS_PATH, ArrayObject::ARRAY_AS_PROPS などの定数を使用します。
  • string $iteratorClass = ArrayIterator::class: ArrayObjectのイテレータとして使用するクラス名。デフォルトは ArrayIterator::class です。

戻り値(return)

戻り値なし

戻り値はありません

【PHP8.x】__constructメソッドの使い方 | いっしー@Webエンジニア