Bench.php 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <?php
  2. namespace App\Controllers;
  3. use App\Libraries\DbRaw;
  4. class Bench extends BaseController
  5. {
  6. public function plaintext()
  7. {
  8. $this->response->setContentType('text/plain');
  9. return $this->response->setBody('Hello, World!');
  10. }
  11. public function json()
  12. {
  13. return $this->response->setJSON(['message' => 'Hello, World!']);
  14. }
  15. public function db()
  16. {
  17. $worlds = Dbraw::get()
  18. ->query('SELECT * FROM World WHERE id = ?', array(mt_rand(1, 10000)))
  19. ->getRow();
  20. return $this->response->setJSON($worlds);
  21. }
  22. public function queries($queries = 1)
  23. {
  24. $worlds = [];
  25. $queries = is_numeric($queries) ? min(max($queries, 1), 500) : 1;
  26. for ($i = 0; $i < $queries; ++$i) {
  27. $worlds[] = Dbraw::get()
  28. ->query('SELECT * FROM World WHERE id = ?', array(mt_rand(1, 10000)))
  29. ->getRow();
  30. }
  31. return $this->response->setJSON($worlds);
  32. }
  33. public function update($queries = 1)
  34. {
  35. $worlds = [];
  36. $queries = is_numeric($queries) ? min(max($queries, 1), 500) : 1;
  37. for ($i = 0; $i < $queries; ++$i) {
  38. $id = mt_rand(1, 10000);
  39. $world = Dbraw::get()
  40. ->query('SELECT * FROM World WHERE id = ?', [$id])
  41. ->getRow();
  42. $world->randomNumber = mt_rand(1, 10000);
  43. Dbraw::get()
  44. ->query('UPDATE World SET randomNumber=? WHERE id=?', [$world->randomNumber, $id]);
  45. $worlds[] = $world;
  46. }
  47. return $this->response->setJSON($worlds);
  48. }
  49. public function fortunes()
  50. {
  51. $fortunes = Dbraw::get()
  52. ->query('SELECT * FROM Fortune')
  53. ->getResultArray();
  54. $fortunes[] = [
  55. 'id' => 0,
  56. 'message' => 'Additional fortune added at request time.'
  57. ];
  58. usort($fortunes, fn($a, $b) => $a['message'] <=> $b['message']);
  59. $data['fortunes'] = $fortunes;
  60. return view('fortunes', $data);
  61. }
  62. }