Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

Name

display() — Affiche le template

Description

void display(string template,
             string cache_id,
             string compile_id);

Utilisée pour afficher un template. Il faut fournir un type et un chemin de ressource template valides. Vous pouvez passer en second paramètre un identifiant de fichier de $cache id. Reportez-vous à la section cache pour plus de renseignements.

En tant que troisième paramètre optionnel, vous pouvez passer un identifiant de compilation $compile_id. C'est au cas où vous voudriez compiler plusieurs versions du même template, par exemple, pour avoir des templates compilés pour différents langages. Une autre utilité pour l'identifiant de compilation $compile_id est lorsque vous utilisez plus d'un $template_dir mais seulement un $compile_dir. Définissez un $compile_id séparé pour chaque $template_dir, sinon, les templates du même nom s'effaceront. Vous pouvez également définir la variable $compile_id une seule fois plutôt que de la passer à chaque appel à la fonction.

Example 13.12. Exemple avec display()


<?php
include(SMARTY_DIR.'Smarty.class.php');
$smarty = new Smarty();
$smarty->caching = true;

// ne fait un appel à la base de données que si le fichier
// de cache n'existe pas
if(!$smarty->is_cached('index.tpl')) {

    // quelques données
    $address = '245 N 50th';
    $db_data = array(
                       'Ville' => 'Lincoln',
                       'Pays' => 'Nebraska',
                       'Code postal' = > '68502'
     );

    $smarty->assign('Nom','Fred');
    $smarty->assign('Adresse',$address);
    $smarty->assign($db_data);

}

// affichage
$smarty->display('index.tpl');
?>

   

Utilisez la syntaxe des ressources templates pour afficher des fichiers en-dehors du répertoire $template_dir.

Example 13.13. Exemples de fonction d'affichage de ressources templates


<?php
// chemin absolu
$smarty->display('/usr/local/include/templates/header.tpl');

// chemin absolu (mêm chose)
$smarty->display('file:/usr/local/include/templates/header.tpl');

// chemin absolu Windows (on DOIT utiliser le préfixe "file:")
$smarty->display('file:C:/www/pub/templates/header.tpl');

// inclue à partir de la ressource template nommée "db"
$smarty->display('db:header.tpl');
?>

   

Voir aussi fetch() et template_exists().