DefaultController.php 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace App\Controller;
  3. use App\GreetingGenerator;
  4. use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
  5. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  6. use Symfony\Component\HttpFoundation\Response;
  7. class DefaultController extends AbstractController {
  8. /**
  9. * @return \Symfony\Component\HttpFoundation\Response
  10. *
  11. * @Route("/",
  12. * name="front"
  13. * )
  14. * @Route("/hello",
  15. * name="front-hello"
  16. * )
  17. */
  18. public function index() {
  19. return new Response("Hello");
  20. }
  21. /**
  22. * @param $name
  23. * @param \App\GreetingGenerator $generator
  24. *
  25. * @return \Symfony\Component\HttpFoundation\Response
  26. *
  27. * @Route(
  28. * name="hello-html",
  29. * path="/hello/{name}"
  30. * )
  31. */
  32. public function hello($name, GreetingGenerator $generator) {
  33. $greeting = $generator->getRandomGreeting();
  34. return new Response("$greeting $name");
  35. }
  36. /**
  37. * @param $name
  38. *
  39. * @return \Symfony\Component\HttpFoundation\JsonResponse
  40. *
  41. * @Route("/json/{name}",
  42. * name="hello-json",
  43. * )
  44. */
  45. public function helloJson($name) {
  46. return $this->json([
  47. 'name' => $name,
  48. ]);
  49. }
  50. }