質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

1回答

2118閲覧

postされてきた配列を整形したい

tixure55

総合スコア400

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2016/01/24 14:22

編集2016/01/24 15:31

いつもお世話になっています、postされてきた配列を整形したいのですが、どのようにすればいいでしょうか。

送られてきたpost

php

1array(2) { ["name"]=> array(10) { [0]=> string(0) "" [1]=> string(2) "ss" [2]=> string(0) "" [3]=> string(1) "e" [4]=> string(0) "" [5]=> string(2) "ds" [6]=> string(1) "q" [7]=> string(1) "n" [8]=> string(0) "" [9]=> string(0) "" } ["add"]=> array(10) { [0]=> string(0) "" [1]=> string(3) "d@d" [2]=> string(0) "" [3]=> string(3) "c@c" [4]=> string(0) "" [5]=> string(3) "e@e" [6]=> string(3) "v@v" [7]=> string(3) "n@n" [8]=> string(0) "" [9]=> string(0) "" } } array(2) { ["name"]=> string(0) "" ["add"]=> string(0) "" }

これを以下のような配列に変更したいのです。

php

1array(2) { [0] => array(["name"] =>"",["address"]=>""), [1] => array(["name"] =>"ss",["address"]=>"d@d"), [2] => array(["name"] =>"",["address"]=>""),[3] => array(["name"] =>"e",["address"]=>"c@c"),[4] => array(["name"] =>"",["address"]=>""),[5] => array(["name"] =>"ds",["address"]=>"e@e"),[6] => array(["name"] =>"q",["address"]=>"v@v"),[7] => array(["name"] =>"n",["address"]=>"n@n"),[8] => array(["name"] =>"",["address"]=>""),[9] => array(["name"] =>"",["address"]=>"")}

試みたソース↓

php

1<?php 2 3$arr = [ 4>.'name' => [ 5>.>.'name01' 6>.>., 'name02' 7>.>., 'name03' 8>.] 9>., 'add' => [ 10>.>.'user01@email.com' 11>.>., 'user02@email.com' 12>.>., 'user03@email.com' 13>.] 14]; 15 16$resArr = []; 17foreach ($arr['name'] as $i => $val) { 18>.$resArr[] = [ 19>.>.'name' => $val 20>.]; 21} 22 23foreach ($arr['add'] as $i => $val) { 24>.$resArr2[] = [ 25>.>.'add' => $val 26>.]; 27} 28 29$arr = array(); 30 31$arr[] = array_merge($resArr , $resArr2); 32 33var_dump($arr);

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

さすがにもうヒントだけ。

php

1<?php 2 3$arr = [ 4 'name' => [ 5 'name01' 6 , 'name02' 7 , 'name03' 8 ] 9 , 'add' => [ 10 'user01@email.com' 11 , 'user02@email.com' 12 , 'user03@email.com' 13 ] 14]; 15 16$resArr = []; 17foreach ($arr['name'] as $i => $val) {

php

1<?php 2$arr = [ 3 'name' => [ 4 'name01' 5 , 'name02' 6 , 'name03' 7 ] 8 , 'add' => [ 9 'user01@email.com' 10 , 'user02@email.com' 11 , 'user03@email.com' 12 ] 13]; 14 15$resArr = []; 16foreach ($arr['name'] as $i => $val) { 17 $resArr[] = [ 18 'name' => $val 19 , 'add' => $arr['add'][$i] 20 ]; 21} 22 23var_dump($resArr);

投稿2016/01/24 15:16

編集2016/01/24 15:37
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tixure55

2016/01/24 15:29

いつも回答ありがとうございます、ヒントから解決を試みたのですが、array_mergeすると、addの配列が結局nameのあとにきてしまって、["name"] => 〜、["address"] =>〜の形になりません。
退会済みユーザー

退会済みユーザー

2016/01/24 15:39 編集

array_mergeは使いません。 tixure55 さんは学生??
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問