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

<?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を渡すことで、ループで一括取得することができる。

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