勉強したことのメモ

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でファイルアップロード時にディレクトリトラバーサル攻撃の対策をする方法

あるシステムのセキュリティ対策としてディレクトリトラバーサル(Directory ...

PHPで配列内から重複を削除する

やりたかった事はそのまま、配列内から重複を削除したかった。 ■参考サイト htt ...

PHPでLINEログイン後「ユーザー名」「ユーザーID」「プロフィール画像URL」「メッセージ」を取得する方法

<a>タグのリンクからページ遷移するとLINEログインし、その後に「 ...

PHP8系の環境でdBug.phpライブラリが使用できない場合の対応方法

先日メモしたdBug.phpをPHP8系の環境で試すと動作しなかった。ただエラー ...

PHPでbool値(true / false)を文字列として出力する方法

PHPにてbool値(true / false)をechoで出力するとtrueは ...