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

回答編集履歴

1

追記

2017/08/23 06:19

投稿

yambejp
yambejp

スコア117877

answer CHANGED
@@ -38,4 +38,72 @@
38
38
  }
39
39
 
40
40
  print_r($a);
41
+ ```
42
+
43
+ # 追記
44
+ 2段階ソート
45
+ ```PHP
46
+ $a=[
47
+ 762=>[
48
+ [
49
+ "scorer_time"=>"20",
50
+ "scorer"=>"5",
51
+ "assist"=>"16",
52
+ "inputnumber"=>"1",
53
+ ],
54
+ [
55
+ "scorer_time"=>"13",
56
+ "scorer"=>"6",
57
+ "assist"=>"15",
58
+ ],
59
+ [
60
+ "scorer_time"=>"20",
61
+ "scorer"=>"6",
62
+ "assist"=>"15",
63
+ "inputnumber"=>"2",
64
+ ],
65
+ ],
66
+ 763=>[
67
+ [
68
+ "scorer_time"=>"80",
69
+ "scorer"=>"5",
70
+ "assist"=>"2",
71
+ "inputnumber"=>"2",
72
+ ],
73
+ [
74
+ "scorer_time"=>"13",
75
+ "scorer"=>"6",
76
+ "assist"=>"15",
77
+ ],
78
+ [
79
+ "scorer_time"=>"80",
80
+ "scorer"=>"99",
81
+ "assist"=>"99",
82
+ "inputnumber"=>"1",
83
+ ],
84
+ ],
85
+ ];
86
+
87
+ foreach($a as &$b){
88
+ usort($b,function($x,$y){
89
+ $i=(int) $x["scorer_time"];
90
+ $j=(int) $y["scorer_time"];
91
+ $k=(int) isset($x["inputnumber"])?$x["inputnumber"]:"999";
92
+ $l=(int) isset($y["inputnumber"])?$y["inputnumber"]:"999";
93
+ $ret=0;
94
+ if($i>$j){
95
+ $ret=1;
96
+ }elseif($i<$j){
97
+ $ret=-1;
98
+ }elseif($k>$l){
99
+ $ret=1;
100
+ }elseif($k<$l){
101
+ $ret=-1;
102
+ }
103
+ return $ret;
104
+ });
105
+ }
106
+
107
+ print_r($a);
108
+
41
109
  ```