// src/AppBundle/Controller/HasardController.php
namespace AppBundle\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;
class HasardController
{
/**
* @Route("/nombre")
*/
public function numberAction()
{
$number = mt_rand(0, 100);
return new Response(
'Un nombre au hasard '.$number.''
);
}
}
# app/config/routing.yml
nombre:
resource: "@MeetupBundle/Controller/"
type: annotation
Première chose à savoir sur Twig : vous pouvez afficher des variables et pouvez exécuter des expressions. Ce n'est pas la même chose :
{{ … }} affiche quelque chose ;
{% … %} fait quelque chose ;
{# … #} n'affiche rien et ne fait rien : c'est la syntaxe pour les commentaires, qui peuvent être sur plusieurs lignes.
// src/AppBundle/Controller/HasardController.php
namespace AppBundle\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class HasardController extends Controller
{
/**
* @Route("/nombre")
*/
public function numberAction()
{
$number = mt_rand(0, 100);
return $this->render('nombre.html.twig', array(
'number' => $number,
));
}
}
{# app/Resources/views/nombre.html.twig #}
{% extends '::base.html.twig' %}
{% block body %}
Un nombre au hasard {{ number }}
{% endblock %}