勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPでPOST送信する際に多次元配列も送る方法

   2024/01/13  PHP

PHPでPOST送信する際に多次元配列も送りたかった。ただ普通に送ろうとするとOKの場合とNGの場合があった。解決方法等のメモ。

 

POST送信の方法

以下方法を用いた。

https://taitan916.info/blog/?p=2665

 

テスト結果

$data = array(
    'key' => 123, //OK
    'account' => array('id' => 111, 'pass' => 222), //OK
    'title' => array(
        0 => array('name' => 'hoge'), //NG
        1 => array('name' => 'huga'), //NG
    )
);

keyとaccountは正常に受信できたけど、titleに関しては正常に受信できなかった。具体的には受信側でvar_dumpしたところstring型のarrayとして表示された。

どうにかならないものかと色々試したところシリアライズする事で解決できた。以下のような形。

$title = array(
    0 => array('name' => 'hoge'),
    1 => array('name' => 'huga'),
);
$data = array(
    'key' => 123, 
    'account' => array('id' => 111, 'pass' => 222), 
    'title' => serialize($title), 
);

 - PHP

  関連記事

Codeigniter3で外部ファイル(CSS / JS)の読み込みと共通パーツ化する方法

CodeigniterでCSSやJSファイル等の外部ファイル読み込みたかった。ま ...

PHPでパスワードを保存する際に暗号(パスワードハッシュ)化させ、ログイン認証時に用いる方法

PHPでログイン認証を組み込む際に今までは特に暗号化は行っていなかった。と言うの ...

PHPでキーや値は保持したまま順番を入れ替える

PHPで連想配列のキーや値は保持したまま順番をランダムに入れ替えたかった。一発で ...

PHPからWebAPI(screendot)経由で他サイトのスクリーンショットを取得する方法

PHPで他サイトのスクリーンショットを取得したい。今回はライブラリは無しで実現し ...

DTIのVPSにCodeigniter3を導入する方法

DTIのVPSにPHPフレームワークのCodeigniter3系をインストールし ...