カテゴリ: PHP 更新日: 2026/06/08

PHPで配列の末尾に要素を追加!array_push()と[] = の速度比較

PHPで配列の末尾に要素を追加!array_push()と[] = の速度比較
PHPで配列の末尾に要素を追加!array_push()と[] = の速度比較

先生と生徒の会話形式で理解しよう

生徒

「PHPで配列の最後に新しい値を追加するには、どうすればいいですか?」

先生

「PHPでは、array_push()[] =を使うと、配列の末尾に要素を追加できます。」

生徒

「どちらを使っても同じですか?」

先生

「1つだけ追加するなら、[] =のほうがシンプルで速いことが多いです。複数まとめて追加したいときはarray_push()も使えます。」

生徒

「速度の違いもあるんですね。」

先生

「はい。初心者にもわかるように、配列の基本から追加方法、速度比較の考え方まで順番に見ていきましょう。」

1. PHPの配列とは?

1. PHPの配列とは?
1. PHPの配列とは?

PHPの配列とは、複数のデータを1つの変数にまとめて保存できる仕組みです。普通の変数は1つの値を入れる箱のようなものですが、配列は複数の箱が横に並んだ棚のようなものです。たとえば、商品名の一覧、会員名の一覧、点数の一覧、カテゴリの一覧、買い物かごの商品一覧など、複数の値をまとめて扱いたいときに配列を使います。

PHP初心者の方は、配列を買い物かごのようなものだと考えるとわかりやすいです。買い物かごには、りんご、みかん、ぶどうのように複数の商品を入れられます。PHPの配列にも、同じように複数の値を入れて、あとから追加したり、取り出したり、表示したりできます。

PHPの数値配列では、配列の中に入っている要素に番号が付きます。この番号を添字と呼びます。添字とは、配列の何番目に値が入っているかを表す番号です。PHPでは最初の要素が0番目、次の要素が1番目、その次が2番目になります。配列に新しい値を追加すると、その値にも新しい番号が付けられます。

配列の末尾に要素を追加する処理は、PHPの配列操作の中でも特によく使います。商品を買い物かごに入れる、入力されたデータを一覧に追加する、検索結果を配列に保存する、処理した結果を順番にためるなど、Webアプリケーション開発で何度も登場する基本です。

2. 配列の末尾に要素を追加するとは?

2. 配列の末尾に要素を追加するとは?
2. 配列の末尾に要素を追加するとは?

配列の末尾に要素を追加するとは、配列の最後に新しい値を入れることです。末尾とは、一番後ろ、最後という意味です。たとえば、すでにりんごみかんが入っている配列にぶどうを追加すると、配列の最後にぶどうが入ります。

身近な例でいうと、順番待ちの列の最後に新しい人が並ぶようなものです。すでに並んでいる人の順番はそのままで、新しく来た人が一番後ろに加わります。PHPの配列でも同じように、末尾に追加する場合は、もとの要素の順番を保ったまま新しい要素が後ろに入ります。

PHPで配列の末尾に要素を追加する代表的な方法には、array_push()を使う方法と、[] =を使う方法があります。どちらも配列の最後に値を追加できますが、書き方や使いやすい場面、速度の考え方に違いがあります。


$fruits = ["りんご", "みかん"];

$fruits[] = "ぶどう";

print_r($fruits);

Array
(
    [0] => りんご
    [1] => みかん
    [2] => ぶどう
)

この例では、[] =を使って配列の最後にぶどうを追加しています。PHPでは、この書き方がとてもよく使われます。短く書けて読みやすいため、初心者にもおすすめしやすい方法です。

3. array_push()の基本的な使い方

3. array_push()の基本的な使い方
3. array_push()の基本的な使い方

array_push()は、PHPで配列の末尾に1つ以上の要素を追加するための関数です。関数とは、決まった処理を簡単に使えるようにした便利な道具のことです。array_push()を使うと、指定した配列の最後に新しい値を追加できます。

array_push($array, $value)のように書くと、$arrayの最後に$valueが追加されます。複数の値をまとめて追加することもできます。PHPの配列操作で、最後に値を追加したいときに使える基本的な関数です。


$colors = ["赤", "青"];

array_push($colors, "緑");

print_r($colors);

Array
(
    [0] => 赤
    [1] => 青
    [2] => 緑
)

この例では、配列$colorsの末尾にを追加しています。もともと0番目に、1番目にがあり、新しく追加されたが2番目になります。PHP初心者の方は、array_push()は配列の最後に入れる関数と覚えるとわかりやすいです。

ただし、1つだけ要素を追加する場合は、array_push()よりも[] =のほうがよく使われます。理由は、書き方が短く、処理もシンプルだからです。

4. [] = の基本的な使い方

4. [] = の基本的な使い方
4. [] = の基本的な使い方

[] =は、PHPで配列の末尾に要素を追加するための短い書き方です。$array[] = "値";と書くと、配列の最後に新しい値が追加されます。関数を呼び出す必要がないため、コードが短くなり、読みやすくなります。

PHPの実務でも、配列に1つずつ要素を追加する場合は[] =がよく使われます。たとえば、検索結果を順番に配列へ入れる、フォームで入力された値を配列へ追加する、条件に合う商品だけを配列へためる、といった場面です。


$items = [];

$items[] = "ノート";
$items[] = "えんぴつ";
$items[] = "消しゴム";

print_r($items);

Array
(
    [0] => ノート
    [1] => えんぴつ
    [2] => 消しゴム
)

この例では、空の配列$itemsを作り、[] =で1つずつ商品名を追加しています。空の配列とは、まだ値が入っていない配列のことです。最初は何も入っていなくても、あとから値を追加して配列を作っていくことができます。

[] =を使うと、PHPが自動的に次の添字を付けてくれます。そのため、何番目に入れるかを自分で指定する必要はありません。初心者にとっても扱いやすい書き方です。

5. array_push()と[] = の違い

5. array_push()と[] = の違い
5. array_push()と[] = の違い

array_push()[] =は、どちらも配列の末尾に要素を追加できます。しかし、使い方や向いている場面に違いがあります。1つの値だけを追加する場合は、[] =がシンプルです。複数の値をまとめて追加したい場合は、array_push()を使うと1行で書けます。

また、array_push()は関数なので、呼び出しの処理があります。[] =は配列に直接追加する書き方なので、1つだけ追加する場合は処理が軽くなることが多いです。速度の違いは小さいことも多いですが、何度も繰り返す処理では意識しておくとよいでしょう。

書き方 特徴 向いている場面
$array[] = "値"; 短く書けて速いことが多い 1つずつ要素を追加する場合
array_push($array, "値"); 関数として追加できる 複数要素をまとめて追加する場合

$numbers = [10];

$numbers[] = 20;

array_push($numbers, 30, 40);

print_r($numbers);

Array
(
    [0] => 10
    [1] => 20
    [2] => 30
    [3] => 40
)

この例では、[] =で20を追加し、array_push()で30と40をまとめて追加しています。どちらも配列の最後に要素を追加していますが、目的によって書き方を使い分けると読みやすいコードになります。

6. 速度比較の考え方

6. 速度比較の考え方
6. 速度比較の考え方

PHPで配列の末尾に要素を追加するとき、よく話題になるのがarray_push()[] =の速度比較です。速度とは、プログラムが処理を終えるまでにかかる時間のことです。初心者の方は、難しい性能の話に感じるかもしれませんが、考え方はシンプルです。

[] =は、配列に直接値を追加する書き方です。一方、array_push()は関数を呼び出して値を追加します。関数を呼び出す分だけ、1つだけ追加する場合は[] =のほうが速くなりやすいと考えられます。

ただし、通常の小さなプログラムでは体感できるほどの差はほとんどありません。速度よりも、まずは読みやすく、間違いにくいコードを書くことが大切です。大量のデータを何万回、何十万回も追加するような処理では、[] =を選ぶとよいでしょう。


$data = [];

for ($i = 1; $i <= 5; $i++) {
    $data[] = $i;
}

print_r($data);

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)

この例では、for文を使って1から5までの数字を配列に追加しています。for文とは、決まった回数だけ繰り返すための制御構造です。何度も配列に1つずつ追加する場合は、[] =がシンプルで実用的です。

7. array_push()が便利な場面

7. array_push()が便利な場面
7. array_push()が便利な場面

[] =は1つずつ追加する場合に便利ですが、array_push()にも使いやすい場面があります。それは、複数の要素をまとめて配列の末尾に追加したい場合です。array_push()は、第2引数以降に複数の値を指定できます。

たとえば、すでにある配列に新しい候補をまとめて追加したいとき、作業リストの最後に複数の作業を追加したいとき、商品一覧に複数の商品を追加したいときなどに使えます。


$tasks = ["ログイン確認"];

array_push($tasks, "商品登録", "注文確認", "メール送信");

print_r($tasks);

Array
(
    [0] => ログイン確認
    [1] => 商品登録
    [2] => 注文確認
    [3] => メール送信
)

この例では、array_push()を使って3つの作業をまとめて追加しています。複数の値を一気に追加する場合は、array_push()を使うことでコードを短くまとめられます。

PHP初心者の方は、1つだけ追加するなら[] =、複数まとめて追加するならarray_push()と考えると使い分けやすくなります。

8. array_push()の戻り値を理解する

8. array_push()の戻り値を理解する
8. array_push()の戻り値を理解する

array_push()は、要素を追加した後の配列の要素数を返します。戻り値とは、関数を実行した結果として返ってくる値のことです。array_push()は、追加後の配列そのものを返すわけではありません。

初心者の方は、ここを間違えやすいので注意しましょう。配列の中身を確認したい場合は、print_r()を使います。追加後に配列の要素数を知りたい場合は、array_push()の戻り値を使えます。


$members = ["田中", "佐藤"];

$count = array_push($members, "鈴木");

echo "現在の人数は" . $count . "人です\n";

print_r($members);

現在の人数は3人です
Array
(
    [0] => 田中
    [1] => 佐藤
    [2] => 鈴木
)

この例では、array_push()鈴木を追加し、その結果として配列の要素数である3が返されています。$countには配列ではなく要素数が入ります。PHPで関数を使うときは、戻り値が何を意味するのかを確認することが大切です。

9. PHP開発で使い分ける実用ポイント

9. PHP開発で使い分ける実用ポイント
9. PHP開発で使い分ける実用ポイント

PHPの実際の開発では、配列の末尾に要素を追加する処理はとても多く登場します。たとえば、商品一覧を作る、検索結果をためる、エラーメッセージを配列に入れる、フォーム入力の結果をまとめる、条件に合ったデータだけを別の配列へ追加するなどです。

そのような処理では、基本的に1つずつ値を追加するなら[] =を使うとよいでしょう。書き方が短く、読みやすく、処理も軽くなりやすいためです。一方で、複数の値をまとめて追加する場面ではarray_push()も便利です。

速度比較という言葉を見ると難しく感じるかもしれませんが、初心者のうちは、まず正しく配列に要素を追加できることが大切です。そのうえで、同じ処理を大量に繰り返す場合は[] =を優先すると覚えておくと実践的です。小さな処理では速度差よりも、コードの読みやすさや意味のわかりやすさを大切にしましょう。

PHPで配列操作を学ぶと、一覧表示、会員管理、商品管理、フォーム処理、検索機能、管理画面、ショッピングカートなど、さまざまな機能を作る力につながります。array_push()[] =は、どちらも配列の末尾に要素を追加する基本的な方法です。配列に1つだけ追加するなら[] =、複数まとめて追加するならarray_push()という使い分けを覚えておくと、PHP初心者でも読みやすく実用的なコードを書きやすくなります。

カテゴリの一覧へ
新着記事
New1
Laravel
Laravelのルーティングでサブドメインを使う方法!初心者向けにやさしく解説
New2
Laravel
Laravelでマルチ言語ルートを設定する方法!ロケールごとのprefixで簡単管理
New4
Laravel
Laravelのインストール方法まとめ!ComposerとLaravel Installerの使い方
人気記事
No.1
Java&Spring記事人気No1
Laravel
Laravelのインストール方法まとめ!ComposerとLaravel Installerの使い方
No.2
Java&Spring記事人気No2
Symfony
SymfonyのRemember Me機能を完全解説!初心者でもわかるログイン保持の仕組み
No.3
Java&Spring記事人気No3
Laravel
Laravelでルートに中間処理を追加する方法!ミドルウェア活用ガイド
No.4
Java&Spring記事人気No4
Laravel
Laravelでログを出力する方法(Monolog・storage/logs)
No.5
Java&Spring記事人気No5
Laravel
Laravelでドメインルートを使う方法!マルチドメイン対応を初心者向けに解説
No.6
Java&Spring記事人気No6
Laravel
LaravelのFeatureテストとUnitテストの違いを理解しよう
No.7
Java&Spring記事人気No7
CodeIgniter
CodeIgniterで多言語対応(Language)を徹底解説!言語切り替え機能を実装
No.8
Java&Spring記事人気No8
CodeIgniter
CodeIgniterでファイルアップロードとストレージ管理をマスター!初心者向け完全ガイド