【PHP】array_push()で配列に要素を追加する!

(この記事は2022年6月18日に投稿されました。)

PHPで配列の中に要素を追加する関数として、array_push()があります。

array_push()とは配列に要素を追加する関数になります。

要素として値はもちろんですが、配列を要素として追加することも可能です。

この関数の挙動として、指定した配列の一番後ろに自動的に追加されるようになります。

そのため、array_push()では要素の位置を指定して追加することはできませんので注意してください。

また、2次元配列や3次元配列のような多次元配列でもarray_push()を使用することで、配列に要素を追加することができます。

今回はPHPのarray_push()で配列に要素を追加する方法について紹介していきます。

この記事はこんな方におすすめ
・PHPのarray_push()を使って配列の中に要素を追加したい人




array_push()とは

array_push()とは配列に要素を追加する関数となります。

どの位置に追加するかのインデックス指定はできず、一番後ろに自動的に追加されるようになります。

array_push()の書き方

array_push()の書き方は下記のようになります。

array_push()は必須パラメータである「対象の配列」と「追加する要素」の2つを指定することで使用することができます。

array_push()のパラメータ

array_push()のパラメータは下記のようになります。

  1. 対象の配列(必須)
    追加される対象の配列を指定する
  2. 追加する要素(必須)
    配列に追加するための要素を指定する

1つ目のパラメータである「対象の配列」は要素を追加される配列を指定します。

そして、2つ目のパラメータである「追加する要素」は配列に追加する要素を指定します。

どちらとも要素を直接指定しても構いませんが、変数名として指定しても問題ありません。

array_push()で配列に要素を追加するサンプルコード

array_push()で配列に要素を追加するサンプルコードをご紹介します。

ここでは下記の2つの場合でarray_push()を使用してみます。

  1. 要素が存在する配列に使用する場合
  2. 要素が空である配列に使用する場合

要素が存在する配列に使用する場合

要素が存在する配列にarray_push()を使用してみます。

⚫︎ index.php

⚫︎ 実行結果

要素が存在する配列にarray_push()を使用した結果

array_push()によって、配列の中に要素が追加されます。

そのため、「千代田」が配列の末尾に追加されています。

要素が空である配列に使用する場合

要素が空である配列にarray_push()を使用してみます。

⚫︎ index.php

⚫︎ 実行結果

空の配列に要素を追加する場合にarray_push()を使用した結果

array_push()によって、配列の中に値が追加されます。

そのため、「台東」が配列に追加されています。

array_push()で配列を要素として追加する場合

array_push()で配列を要素として追加するには、2つ目のパラメータである「追加する要素」に配列を指定します。

⚫︎ index.php

⚫︎ 実行結果

array_push()で配列を要素として追加した結果

array_push()によって指定した配列の中に配列が追加されています。

そのため、配列の中に「新宿」と「足立」と「世田谷」が配列形式で追加されています。

array_push()で配列に複数の要素を追加する場合

array_push()で配列に複数の要素を追加するには、3つ目のパラメータ以降に「追加する要素」を指定します。

例えば、一気に2つの値や配列を要素として追加したい場合は下記のようなコードとなります。

⚫︎ index.php

⚫︎ 実行結果

array_push()で配列に複数の値を要素として追加した結果

⚫︎ index.php

⚫︎ 実行結果

array_push()で配列に複数の配列をを要素として追加した結果

3つ目と4つ目のパラメータに値を指定することで、配列に一気に2つの値が追加されています。

また、配列を指定することで配列に一気に2つの配列が追加されています。

array_push()で多次元配列に要素を追加するサンプルコード

array_push()で多次元配列に要素を追加するサンプルコードをご紹介します。

こちらも下記の2つの場合でarray_push()を使用してみます。

  1. 2次元配列に要素を追加する場合
  2. 3次元配列に要素を追加する場合

2次元配列に要素を追加する場合

2次元配列に要素を追加する場合にarray_push()を使用してみます。

⚫︎ index.php

⚫︎ 実行結果

array_push()で2元配列に値を要素として追加した結果

また、array_push()で配列を要素として2次元配列に追加してみます。

⚫︎ index.php

⚫︎ 実行結果

array_push()によって、2次元配列の中に値や配列が要素として追加されています、

また、配列の変数の後ろにインデックスを1つ指定することで、2次元配列の中にある配列の中に要素を追加することができます。

3次元配列に要素を追加する場合

3次元配列に要素を追加する場合にarray_push()を使用してみます。

⚫︎ index.php

⚫︎ 実行結果

array_push()で3次元配列に値を要素として追加した結果

また、array_push()で配列を要素として3次元配列に追加してみます。

⚫︎ index.php

⚫︎ 実行結果

array_push()で3次元配列に配列を要素として追加した結果

array_push()によって、3次元配列の中に値や配列が要素として追加されています、

配列の変数の後ろにインデックスを1つ指定することで、3次元配列の中にある2次元配列の中に要素を追加することができます。

また、配列の変数の後ろにインデックスを2つ指定することで、2次元配列の中にある配列の中に要素を追加することができます。

array_push()で連想配列に要素を追加するサンプルコード

array_push()で連想配列に要素を追加するサンプルコードをご紹介します。

⚫︎ index.php

⚫︎ 実行結果

array_push()で連想配列に要素を追加した結果

array_push()によって、連想配列に要素が追加されています、

しかし、追加した要素に対してキーを設定することはできません。

Sossy

もし、キーを指定して連想配列に追加したいならarray_push()を使用せずに「$array1[‘Arakawa’] = ‘荒川’;」と追記しましょう。

配列の先頭に要素を追加する場合

配列の先頭に要素を追加する場合は、array_unshift()を使用します。

array_unshift()とは、指定した配列の先頭に要素を追加する関数となります。

⚫︎ index.php

⚫︎ 実行結果

array_unshift()で配列の先頭に要素を追加した結果

array_unshift()によって、配列の先頭に要素を追加しています。

そのため、「千代田」が配列の先頭に表示されています。

もし、array_unshift()について詳しく知りたい場合は下記の記事をご参考ください。

配列に位置を指定して要素を追加したい場合

配列に位置を指定して要素を追加したい場合は、array_splice()を使用します。

array_splice()とは 配列の一部分を配列として抜き出す関数となります。

そのため、array_splice()を使って下記のコードのように追記すると、配列の位置を指定して要素を追加することができます。

⚫︎ index.php

⚫︎ 実行結果

array_splice()によって、指定した位置に要素が追加されてます。

また、変数の後ろにインデックスを指定することで、多次元配列でも指定した位置に要素を追加することができます。

まとめ

⚫︎ array_push()とは配列に要素を追加する関数である

⚫︎ array_push()を使用するには2つのパラメータが必須となる
・ 追加したい配列(必須)
・ 追加する要素(必須)

⚫︎ array_push()は要素が存在する配列に追加することができる

⚫︎ array_push()は要素が空である配列にも使用することができる

⚫︎ array_push()で配列を要素して追加するには、「追加する要素」に配列を指定する

⚫︎ array_push()で配列に複数の要素を追加するには、3つ目のパラメータ以降に追加したい要素を指定する

⚫︎ array_push()は多次元配列でも要素を追加することができる

⚫︎ array_push()は連想配列でも要素を追加することができる
(しかし、キーを設定して追加することはできない)

⚫︎ 配列の先頭に要素を追加する場合は、array_unshift()を使用する

⚫︎ 配列に位置を指定して要素を追加したい場合は、array_splice()を使用する
(多次元配列でも可能)

コメントを残す

メールアドレスが公開されることはありません。