Phalcon - Vues
Les vues sont des informations présentées à l'utilisateur final. Une vue peut être considérée comme une page Web avec la réponse appropriée à afficher. La réponse est reçue via le contrôleur qui interagit avec le modèle.
Plus précisément dans Phalcon, la vue se compose de code Volt, PHP et HTML. Un ensemble de délimiteurs spéciaux est disponible pour entrer en mode Volt.{% ... %} est utilisé pour exécuter des instructions telles que des boucles for ou affecter des valeurs, et {{ ... }} imprime le résultat d'une expression dans le modèle.
Les vues dans Phalcon sont essentiellement classées en deux types -
- Volt
- phtml
Volt
Voici la capture d'écran de la sortie que nous avions créée pour le projet demo1 dans le chapitre précédent.
Cette sortie est réalisée à l'aide du fichier views/index/index.volt.
Caractéristiques des fichiers Volt
C'est un modèle écrit en langage C et est considérablement rapide par rapport aux autres langages.
Il comprend un ensemble de composants hautement intégrés, qui sont très utiles dans Phalcon.
Il peut également être utilisé en tant que composant autonome.
Volt est compilé en code PHP pur.
Voici le code pour index.volt qui se charge par défaut pour n'importe quel projet.
<!--<div class = "page-header">
<h1>Congratulations!</h1>
</div>-->
<p>This is my first web application in Phalcon </p>
<!--<p>You're now flying with Phalcon. Great things are about to happen!</p>
<p>This page is located at <code>views/index/index.volt</code></p>-->
Rendu hiérarchique
Les vues de Phalcon prennent en charge le rendu hiérarchique et Phalcon\Mvc\Viewest utilisé comme composant de rendu par défaut. Ce composant utilise PHP comme moteur de modèle par rapport aux fichiers volt qui utilisent C comme langage de modèle.
Ces vues devraient avoir .phtmlextension. Le répertoire par défaut des vues pour le projet donné se compose des trois fichiers suivants -
Action view- Cette vue est appelée pour exécuter une action particulière. Il est appelé lorsque l'action «show» est exécutée.
Controller layout- Cette vue est présente dans le dossier des mises en page. Par exemple,C:\xampp\htdocs\demo\app\views\layouts. Il invoque les appels de méthode associés au contrôleur approprié. Le code implémenté dans la mise en page sera implémenté au fur et à mesure des besoins.
Main layout - Cette vue de mise en page invoquera l'action principale et elle sera affichée pour chaque contrôleur ou action dans l'application Web.
Différence entre les fichiers .volt et .phtml
.volt | .phtml |
---|---|
L'extension .volt est utilisée lorsque le moteur de template mis en place dans l'application est écrit en C | .phtml est utilisé lorsque le moteur de modèle est PHP lui-même |
Il peut être utilisé comme un composant autonome | Il ne peut pas être utilisé comme un composant autonome |
Les vues Volt sont compilées en code PHP | Les fichiers phtml eux-mêmes incluent du code PHP donc il n'y a pas besoin de compilation dans le framework Phalcon |
Variables
Les variables sont affectées et modifiées dans le modèle à l'aide de «set».
Déclaration d'un tableau
{% set fruits = ['Apple', 'Banana', 'Orange'] %}
Déclarer une chaîne
{% set name = ”John Kennedy” %}
commentaires
Des commentaires peuvent également être ajoutés à un modèle en utilisant le {# ... #}délimiteurs. Tout le texte à l'intérieur est simplement ignoré dans la sortie finale.
{# note: this is a comment
{% set price = 100; %}
#}
Exemple
{% set fruits = ['Apple', 'Banana', 'Orange'] %}
<h1>Fruits</h1>
<ul>
{% for fruit in fruits %}
<li>{{ fruit|e }}</li>
{% endfor %}
</ul>
{% set robots = ['Voltron', 'Astro Boy', 'Terminator', 'C3PO'] %}
<ul>
{% for robot in robots %}
<li>{{ robot }}</li>
{% endfor %}
</ul>
Production
Le code produira l'écran de sortie suivant -