PHPでオブジェクトを配列に変換する方法


  1. get_object_vars関数を使用する方法:

    $object = new stdClass();
    $object->property1 = 'value1';
    $object->property2 = 'value2';
    $array = get_object_vars($object);
  2. json_decodejson_encode関数を使用する方法:

    $object = new stdClass();
    $object->property1 = 'value1';
    $object->property2 = 'value2';
    $array = json_decode(json_encode($object), true);
  3. foreachループを使用する方法:

    $object = new stdClass();
    $object->property1 = 'value1';
    $object->property2 = 'value2';
    $array = [];
    foreach ($object as $key => $value) {
       $array[$key] = $value;
    }
  4. toArrayメソッドを実装する方法(オブジェクト側で定義する必要があります):

    class MyObject {
       public $property1 = 'value1';
       public $property2 = 'value2';
       public function toArray() {
           return get_object_vars($this);
       }
    }
    $object = new MyObject();
    $array = $object->toArray();

これらの方法を使用することで、PHPでオブジェクトを配列に変換することができます。選択する方法は、使用しているPHPバージョンやコードのコンテキストによって異なる場合があります。