勉強したことのメモ

webプログラマが勉強したことのメモ。

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

   

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

  関連記事

FLASHから受信した画像をPHPで保存し、サムネイルも作る

■参考サイト ・FLASH http://www.ilovex.co.jp/bl ...

MySQLiでUPDATE文

MySQLiでUPDATE文 ■ソース $mysqli = new mysqli ...

file_get_contentsを使用する際にタイムアウト設定

20秒に1回自動でリロードするページにて file_get_contentsを使 ...

PHPでcharset

header("Content-Type: text/html; charset ...

PHPで特定のファイル内のみタイムアウトを無効にする

重たい処理をするページだけ、タイムアウトを無効にする場合のメモ。 以下をPHPフ ...

PHPで他サーバにファイルをアップロードする

formで送信した内容をチェックした上で、他サーバにファイルをアップロードしたか ...

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

他社さんと連携して仕事をする際に「フレームワーク何か使いますか?」と聞かれて「使 ...

MySQLで使用するインデックスを指定する

ちゃんと指定してるのにインデックスが使用されていない場合、 オプティマイザに知ら ...

PHPでエラー時はメッセージを残す

セキュリティ対策か何かを施しており、 if (~~~~) { exit(); } ...

PHPでeval時のエラー

eval()'d code on line みたいなエラーが出てた。 よそのシス ...