7.4 HTML
Le rôle de l'assistant Html dans CakePHP est de créer des options HTML-apparentées plus facilement, plus rapidement et plus résistantes au changement. L'utilisation de cet assistant permettra à votre application d'être plus à l'aise dans ses baskets et plus flexible selon où elle est placée par rapport à la racine d'un domaine.
Le rôle de l'assistant Html a changé significativement depuis CakePHP 1.1. Les méthodes relatives aux formulaires ont été dépréciées et déplacées dans le nouvel assistant Form. Si vous cherchez de l'aide pour les formulaires HTML, jeter un oeil au nouvel assistant Form.
Avant que nous regardions les méthodes de l'assistant Html, vous aurez besoin de connaître quelques situations de configuration et d'usage qui vous aideront à utiliser cette classe. Premièrement, dans un souci d'apaiser ceux qui n'aiment pas les balises courtes (<?= ?>) ou les nombreux appels à echo() dans le code de leur vue toutes les méthodes de l'assistant Html sont passées à la méthode output(). Si vous souhaitez activer l'affichage automatique du HTML généré par l'assistant, vous pouvez simplement implémenter output() dans votre classe AppHelper.
function output($str) {
echo $str;
}
function output($str) {echo $str;}
Faire cela supprimera la nécessité d'ajouter des déclarations echo au code de votre vue.
Beaucoup de méthodes du HtmlHelper incluent aussi un paramètre $htmlAttributes, qui vous permet d'ajouter tout attribut supplémentaire à vos balises. Voici quelques exemples d'utilisation du paramètre $htmlAttributes :
Attributs désirés : <tag class="uneClasse" />
Tableau paramètre : array('class'=>'uneClasse')
Attributs désirés : <tag name="foo" value="bar" />
Tableau paramètre : array('name' => 'foo', 'value' => 'bar')
Attributs désirés : <tag class="uneClasse" />Tableau paramètre : array('class'=>'uneClasse')Attributs désirés : <tag name="foo" value="bar" />Tableau paramètre : array('name' => 'foo', 'value' => 'bar')
L'assistant Html est disponible par défaut dans toutes les vues. Si vous obtenez une erreur vous informant qu'il n'y est pas, c'est habituellement du au fait que son nom a été oublié lors d'une configuration manuelle de la variable de contrôleur $helpers.


























