web関連

【PHP】配列に追加する方法

2019/12/20

2019/12/22

wordpressで配列を追加するときの備忘録

+演算子を使って配列に追加する方法

※var_dump($args);は省略

<?php
$args = array('post_type' => 'post');
//array(1) { ["post_type"]=> string(4) "post" } 
$args += array('posts_per_page' => 10);
//array(2) { ["post_type"]=> string(4) "post" ["posts_per_page"]=> int(10) }
?>
簡単

 

array_push()を使って配列に追加

<?php
$args = array('post_type' => 'post');
//array(1) { ["post_type"]=> string(4) "post" }
array_push($args,array('posts_per_page' => 10));
//array(2) { ["post_type"]=> string(4) "post" [0]=> array(1) { ["posts_per_page"]=> int(10) } }
?>

あれ?なんか[0]って数字振られた…

[0]=>
array(1) {
  ["posts_per_page"]=>
  int(10)
}

[0]の部分ってキーっていうみたいだけどarray_pushで追加すると勝手に振られるし変更できないみたい

もし、+演算子と同じ形で追加しようとしたら
php5.3以上なら使える[]を使えばいいみたい

<?php
…
$args['posts_per_page']=10;
//array(2) { ["post_type"]=> string(4) "post" ["posts_per_page"]=> int(10) }
?>

[0]がなくなって+演算子と同じ形で追加できた(ニッコリ

他にarray_mergeってのもあるみたいだけど、個人的に使わなさそうなので割愛

配列周り参考になりそう↓

PHPにおける配列:同種のデータをまとめて扱うためのしくみ

 

配列に追加するときに「$args =追加したい配列」って書いてたら表示がおかしくなった
追加するときは「$args +=追加したい配列」って書かなくちゃだめなんすね