PHP

【PHP】フォームでデータを配列・連想配列で送信する方法

本記事では、フォームでデータする際に配列・連想配列で送信する方法について解説しています。

PHPの学習におすすめ参考書
気づけばプロ並みPHP 改訂版–ゼロから作れる人になる!

本書情報
著者谷藤 賢一
発売日2017/3/6
ページ数331ページ
Kindle版
レビュー
(Amazon)
(168件)

参考書が苦手な人はUdemyの動画がおすすめ
ちゃんと学ぶ、PHP+MySQL(MariaDB)入門講座

動画情報
作成者たにぐち まこと
学習時間11時間
受講者数24,526人
レビュー (4,518件)
動画の詳細はこちら

配列でデータを送信

配列でデータを送信する方法は以下のとおりです。

<form action="test.php" method="GET">
    <input type="text" name="fruits[]">
    <input type="text" name="fruits[]">
    <input type="text" name="fruits[]">
    <button type="submit">データを送信する</button>
</form>
表示結果
表示結果

name属性の最後に配列を表す[]を追加します。これによりデータが配列の形で送信されます。

配列で送信されたデータを参照する方法は以下のとおりです。

<?php 
    print_r($_GET['fruits']);
?>
データ情報
データ情報

name属性の[]前に指定した文字列を連想配列のkeyにします。

これで配列に参照することが出来るようになったので、後は参照したいデータが何番目に入っているかを通常の配列と同様に[index]の形で記述します。今回の例ですとリンゴを取得したい場合は[0]番目を指定します。

連想配列でデータを送信

連想配列の構造をしたデータを送信する方法は以下のとおりです。

<form action="test.php" method="GET">
    <input type="text" name="fruits[name]">
    <input type="number" name="fruits[price]">
    <button type="submit">データを送信する</button>
</form>
表示結果
表示結果

name属性の最後に[key]を追加します。このkeyは送信されたデータを参照するために必要な情報になるので、送信されるデータを連想させる名前を付けると良いです。

送信されたデータを参照する方法は以下のとおりです。

<?php 
    print_r($_GET['fruits']);
?>
データ情報
データ情報

配列で送信されたデータを参照するのと同様に、name属性の[]前に指定した文字列を連想配列のkeyにします。

次にname属性の最後に付けた[key]を使うことで、それに紐付いてセットされている値を取得することが出来ます。今回の例ですと値段を取得したい場合は[‘price’]を指定します。

関連記事

【PHP】GETとPOSTの使い方・書き方本記事ではPHPでデータを送信する時に使用するGETメソッドとPOSTメソッドの使い方・書き方について解説しています。...

ブログランキング・にほんブログ村へ PVアクセスランキング にほんブログ村