What is Smarty?
Why use it?
Use Cases and Work Flow
Syntax Comparison
Template Inheritance
Best Practices
Crash Course
You may use the Smarty logo according to the trademark notice.
For sponsorship, advertising, news or other inquiries, contact us at:
template_exists() — Vérifie si un template spécifique existe
bool template_exists(string template);
Elle accepte soit un chemin vers le template, soit une ressource de type chaîne de caractères spécifiant le nom du template.
Example 13.26. template_exists()
Cet exemple utilise $_GET['page']
pour inclure le contenu d'un template.
Si le template n'existe pas, une page d'erreur sera affiché à la place.
Le fichier page_container.tpl
:
<html> <head><title>{$title}</title></head> <body> {include file='page_top.tpl'} {* inclure le contenu du milieu de la page *} {include file=$page_mid} {include file='page_footer.tpl'} </body>
Et le script PHP
<?php // Définit le nom du fichier eg index.inc.tpl $mid_template = $_GET['page'].'.inc.tpl'; if( !$smarty->template_exists($mid_template) ){ $mid_template = 'page_not_found.inc.tpl'; } $smarty->assign('page_mid', $mid_template); $smarty->display('page_container.tpl'); ?>