回答編集履歴

1

解説

2021/10/28 11:32

投稿

yambejp
yambejp

スコア116724

test CHANGED
@@ -16,8 +16,32 @@
16
16
 
17
17
  foreach($pe["name"] as $key => $val) {
18
18
 
19
+ /*
20
+
21
+ $keyは$pe["name"]を順に処理
22
+
23
+ $key=0,$val=田中なので,$pe["age"][$key]=25,$pe["gender"][$key]=男
24
+
25
+ $key=1,$val=鈴木なので,$pe["age"][$key]=20,$pe["gender"][$key]=男
26
+
27
+ $key=2,$val=佐藤なので,$pe["age"][$key]=23,$pe["gender"][$key]=女
28
+
29
+ */
30
+
19
- echo "{$val}{$pe["age"][$key]}{$pe["gender"][$key]}<br>\n";
31
+ echo $val.$pe["age"][$key].$pe["gender"][$key]."<br>\n";
20
32
 
21
33
  }
22
34
 
35
+ //配列系の関数で処理すると
36
+
37
+ print implode("<br>\n",array_map(function($index) use ($pe){
38
+
39
+ return array_reduce(array_keys($pe),function($data,$key) use($pe,$index){
40
+
41
+ return $data.$pe[$key][$index];
42
+
43
+ });
44
+
45
+ },array_keys(array_values($pe)[0])));
46
+
23
47
  ```