PHPのオブジェクト指向プログラミングにおいて、今回はオブジェクトのメンバ変数を一括取得するコードを備忘録として残しておく。

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
<?php
class Hoge {
  /** @var string */
  private $prop01;
 
  // 以下メンバ変数定義...
   
  /**
   * すべてのメンバ変数を配列として取得
   *
   * @return array
   */
  public function getProperties() {
    $tmpArray = [];
    foreach($this as $key => $val) {
      $tmpArray[$key] = $val;
    }
    return $tmpArray;
  }
}

メンバ変数はforeach文に$thisを渡すことで、ループで一括取得することができる。

メンバ変数の数が多い場合は有効な方法だ。