|
@@ -2,9 +2,21 @@
|
|
|
|
|
|
class Controller_Bench extends Controller
|
|
class Controller_Bench extends Controller
|
|
{
|
|
{
|
|
|
|
+
|
|
|
|
+ private function getUniqueRandomNumbers($count, $min, $max)
|
|
|
|
+ {
|
|
|
|
+ $res = array();
|
|
|
|
+ do {
|
|
|
|
+ $res[\mt_rand($min, $max)] = 1;
|
|
|
|
+ } while (\count($res) < $count);
|
|
|
|
+ return \array_keys($res);
|
|
|
|
+ }
|
|
|
|
+
|
|
public function action_json()
|
|
public function action_json()
|
|
{
|
|
{
|
|
- return new Response(json_encode(array('message' => 'Hello, World!')), 200, array(
|
|
|
|
|
|
+ return new Response(json_encode(array(
|
|
|
|
+ 'message' => 'Hello, World!'
|
|
|
|
+ )), 200, array(
|
|
'Content-Type' => 'application/json'
|
|
'Content-Type' => 'application/json'
|
|
));
|
|
));
|
|
}
|
|
}
|
|
@@ -24,9 +36,9 @@ class Controller_Bench extends Controller
|
|
$queries = is_numeric($queries) ? min(max($queries, 1), 500) : 1;
|
|
$queries = is_numeric($queries) ? min(max($queries, 1), 500) : 1;
|
|
|
|
|
|
$worlds = array();
|
|
$worlds = array();
|
|
-
|
|
|
|
- for($i = 0; $i < $queries; ++$i) {
|
|
|
|
- $worlds[] = Model_World::find(mt_rand(1, 10000))->toJson();
|
|
|
|
|
|
+ $numbers = $this->getUniqueRandomNumbers($queries, 1, 10000);
|
|
|
|
+ foreach ($numbers as $id) {
|
|
|
|
+ $worlds[] = Model_World::find($id)->toJson();
|
|
}
|
|
}
|
|
|
|
|
|
return new Response(json_encode($worlds), 200, array(
|
|
return new Response(json_encode($worlds), 200, array(
|
|
@@ -44,13 +56,13 @@ class Controller_Bench extends Controller
|
|
|
|
|
|
$fortunes[] = $runtimeFortune;
|
|
$fortunes[] = $runtimeFortune;
|
|
|
|
|
|
- usort($fortunes, function($left, $right) {
|
|
|
|
|
|
+ usort($fortunes, function ($left, $right) {
|
|
if ($left->message === $right->message) {
|
|
if ($left->message === $right->message) {
|
|
return 0;
|
|
return 0;
|
|
} else if ($left->message > $right->message) {
|
|
} else if ($left->message > $right->message) {
|
|
return 1;
|
|
return 1;
|
|
} else {
|
|
} else {
|
|
- return -1;
|
|
|
|
|
|
+ return - 1;
|
|
}
|
|
}
|
|
});
|
|
});
|
|
|
|
|