回答編集履歴

1

追記

2017/08/23 06:19

投稿

yambejp
yambejp

スコア114876

test CHANGED
@@ -79,3 +79,139 @@
79
79
  print_r($a);
80
80
 
81
81
  ```
82
+
83
+
84
+
85
+ # 追記
86
+
87
+ 2段階ソート
88
+
89
+ ```PHP
90
+
91
+ $a=[
92
+
93
+ 762=>[
94
+
95
+ [
96
+
97
+ "scorer_time"=>"20",
98
+
99
+ "scorer"=>"5",
100
+
101
+ "assist"=>"16",
102
+
103
+ "inputnumber"=>"1",
104
+
105
+ ],
106
+
107
+ [
108
+
109
+ "scorer_time"=>"13",
110
+
111
+ "scorer"=>"6",
112
+
113
+ "assist"=>"15",
114
+
115
+ ],
116
+
117
+ [
118
+
119
+ "scorer_time"=>"20",
120
+
121
+ "scorer"=>"6",
122
+
123
+ "assist"=>"15",
124
+
125
+ "inputnumber"=>"2",
126
+
127
+ ],
128
+
129
+ ],
130
+
131
+ 763=>[
132
+
133
+ [
134
+
135
+ "scorer_time"=>"80",
136
+
137
+ "scorer"=>"5",
138
+
139
+ "assist"=>"2",
140
+
141
+ "inputnumber"=>"2",
142
+
143
+ ],
144
+
145
+ [
146
+
147
+ "scorer_time"=>"13",
148
+
149
+ "scorer"=>"6",
150
+
151
+ "assist"=>"15",
152
+
153
+ ],
154
+
155
+ [
156
+
157
+ "scorer_time"=>"80",
158
+
159
+ "scorer"=>"99",
160
+
161
+ "assist"=>"99",
162
+
163
+ "inputnumber"=>"1",
164
+
165
+ ],
166
+
167
+ ],
168
+
169
+ ];
170
+
171
+
172
+
173
+ foreach($a as &$b){
174
+
175
+ usort($b,function($x,$y){
176
+
177
+ $i=(int) $x["scorer_time"];
178
+
179
+ $j=(int) $y["scorer_time"];
180
+
181
+ $k=(int) isset($x["inputnumber"])?$x["inputnumber"]:"999";
182
+
183
+ $l=(int) isset($y["inputnumber"])?$y["inputnumber"]:"999";
184
+
185
+ $ret=0;
186
+
187
+ if($i>$j){
188
+
189
+ $ret=1;
190
+
191
+ }elseif($i<$j){
192
+
193
+ $ret=-1;
194
+
195
+ }elseif($k>$l){
196
+
197
+ $ret=1;
198
+
199
+ }elseif($k<$l){
200
+
201
+ $ret=-1;
202
+
203
+ }
204
+
205
+ return $ret;
206
+
207
+ });
208
+
209
+ }
210
+
211
+
212
+
213
+ print_r($a);
214
+
215
+
216
+
217
+ ```