勉強したことのメモ

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

  関連記事

PHP / MySQLで2038年問題の対策

先日打ち合わせの際に「タイムスタンプを使ってユニークキーに云々~~」といったよう ...

PHPにて指定した期間内の合計日数を出力する方法

PHPにて開始日と終了日をユーザが入力すると、その期間内の合計日数を出力させたい ...

$_SERVER['PHP_SELF']に脆弱性あり

formのaction属性とかページングのリンクとかで、 <form ac ...

PHPでファイルを添付してメールを送信する方法(PHPMailer)

PHPでファイルを添付の上、メールを送信したかった。方法を探したところphpma ...

mysqldumpが使えないレンタルサーバでMySQLのバックアップ

mysqldumpが使えないレンタルサーバで開発を行うことがあり、尚且つ他社に使 ...