teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

解説

2021/10/12 01:56

投稿

yambejp
yambejp

スコア117892

answer CHANGED
@@ -13,4 +13,46 @@
13
13
  krsort($a);
14
14
  $b=array_shift($a);
15
15
  print "最大要素数のアイテムは".implode(",",$b);
16
+ ```
17
+
18
+ # 解説
19
+ 便宜上要素の順番は変えてあります。
20
+ 以下実行結果とあわせて確認してみてください。
21
+ ```PHP
22
+ <?PHP
23
+ $book_titles = [
24
+ "ruby" => ["たのしいRuby"],
25
+ "php" => ["やさしいPHP", "独習PHP", "PHPフレームワークLaravel入門","test"],
26
+ "java" => ["やさしいJava", "Java言語で学ぶデザインパターン入門"],
27
+ "python" =>["たのしいPython", "スラスラわかるPython", "いちばんやさしいPythonの教本", "退屈なことはPythonにやらせよう"]
28
+ ];
29
+
30
+ $keys=array_keys($book_titles);
31
+ print "キーをリスト化<br>";
32
+ print_r($keys);
33
+ print "<hr>";
34
+ $a=array_reduce($keys,function($x,$y) use($book_titles){
35
+ print "要素数をカウント<br>";
36
+ $count=count($book_titles[$y]);
37
+ print_r($count);
38
+ print "<hr>";
39
+ $x[$count][]=$y;
40
+ print "要素数をキーにした要素をリスト化<br>";
41
+ print_r($x);
42
+ print "<hr>";
43
+ return $x;
44
+ },[]);
45
+ print "集計されたリスト<br>";
46
+ print_r($a);
47
+ print "<hr>";
48
+ krsort($a);
49
+ print "キーの逆順でソート<br>";
50
+ print_r($a);
51
+ print "<hr>";
52
+ print "先頭データを取り出す<br>";
53
+ $b=array_shift($a);
54
+ print_r($b);
55
+ print "<hr>";
56
+ print "結合して表示<br>";
57
+ print_r(implode(",",$b));
16
58
  ```

1

chousei

2021/10/12 01:56

投稿

yambejp
yambejp

スコア117892

answer CHANGED
@@ -12,5 +12,5 @@
12
12
  },[]);
13
13
  krsort($a);
14
14
  $b=array_shift($a);
15
- print_r(implode(",",$b));
15
+ print "最大要素数のアイテムは".implode(",",$b);
16
16
  ```