Interagir avec les vues
1. Définir les variables de vue
La méthode set() de la classe Cake\Controller\Controller permet de passer des variables du contrôleur à la vue.
Syntaxe :
set( string|array $name , string|array|null|boolean $value null )
Cette méthode attend :
-
Soit un premier paramètre de type string représentant le nom de la variable et en deuxième paramètre la valeur de cette variable.
-
Soit en premier paramètre un tableau contenant les noms des variables et en deuxième paramètre un tableau contenant les valeurs de ces variables.
-
Soit en premier paramètre un tableau associatif de la forme "nom de la variable" => "valeur de la variable" et dans ce cas il n’y a pas de second paramètre.
Une fois définie par cette méthode, la variable est directement utilisable dans la vue de l’action.
Exemple :
En définissant dans le contrôleur :
$this->set('exemple', 'un peu de texte pour exemple');
la variable $exemple peut être utilisée dans la vue :
Merci d'ajouter <?= $exemple;?>
ce qui affichera :
Merci d'ajouter un peu de texte pour exemple
Autre exemple :
En passant en paramètre un tableau associatif à la méthode set() :
Le code dans le contrôleur est :
$data = [
'exemple' => 'un peu de texte pour exemple' ,
'utilite' => 'pour comprendre le principe' ...