DefaultController.php 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  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. * @Route("/hello")
  13. */
  14. public function index() {
  15. return new Response("Hello");
  16. }
  17. /**
  18. * @param $name
  19. * @param \App\GreetingGenerator $generator
  20. *
  21. * @return \Symfony\Component\HttpFoundation\Response
  22. *
  23. * @Route("/hello/{name}")
  24. */
  25. public function hello($name, GreetingGenerator $generator) {
  26. $greeting = $generator->getRandomGreeting();
  27. return new Response("$greeting $name");
  28. }
  29. /**
  30. * @param $name
  31. *
  32. * @return \Symfony\Component\HttpFoundation\JsonResponse
  33. *
  34. * @Route("/json/{name}")
  35. */
  36. public function helloJson($name) {
  37. return $this->json([
  38. 'name' => $name,
  39. ]);
  40. }
  41. }