[PHP] 連想配列の値にオブジェクトを追加する

2019年1月9日ITPHP

PHPの連想配列の値にオブジェクトを追加する方法です。


array_push と stdClass を利用する場合

コード:

fruit = "banana";
array_push($array, $object0);

$object1 = new stdClass();
$object1->fruit = "apple";
array_push($array, $object1);

$object2 = new stdClass();
$object2->fruit = "melon";
array_push($array, $object2);

var_dump($array);


paiza io:

配列の中にちゃんとオブジェクトとして入っています。

array(3) {
  [0]=>
  object(stdClass)#1 (1) {
    ["fruits"]=>
    string(6) "banana"
  }
  [1]=>
  object(stdClass)#2 (1) {
    ["fruits"]=>
    string(5) "apple"
  }
  [2]=>
  object(stdClass)#3 (1) {
    ["fruits"]=>
    string(5) "melon"
  }
}


配列をオブジェクトに型変換し、イコール演算子を使って追加する場合

コード:

 'banana');
$array[] = (object) array('fruits' => 'apple');
$array[] = (object) array('fruits' => 'melon');

var_dump($array);


paiza io:


他にも書き方はありますが、2つ目の書き方が1番スッキリ書けるのではないでしょうか

参考:
In PHP, how can I add an object element to an array?

スポンサーリンク

Posted by nobuhiro harada