{include_php}Nom attributTypeRequisDéfautDescriptionfilechaîne de caractèreouin/aLe nom du fichier PHP à inclureonceboléenNontrueInclure plusieurs fois ou non le fichier PHP si
plusieurs demandes d'inclusions sont faîtes.assignchaîne de caractèreNonn/ale nom de la variable PHP dans laquelle la sortie
sera assignée plutôt que directement affichée.Technical Note
{include_php} est presque obsolète dans Smarty. Vous pouvez obtenir des résultats
équivalents en utilisant les fonctions utilisateur.
La seule raison qui peut vous pousser à utiliser {include_php} est que
vous avez besoin de mettre une de vos fonction en quarantaine vis à vis du
répertoire des plugins ou de votre application.
Reportez vous à l'exemple des templates composants
pour plus de détails.
Les balises {include_php} sont utilisées pour inclure directement
un script PHP dans vos templates. Si "security" est activé,
alors le script à exécuter doit être placé dans le chemin $trusted_dir. La balise
{include_php} attends l'attribut "file", qui contient le chemin du
fichier PHP à inclure, relatif à $trusted_dir, ou absolu.
Par défaut, les fichiers PHP ne sont inclus qu'une seule fois, même si
la demande d'inclusion survient plusieurs fois dans le template.
Vous pouvez demander à ce que ce fichier soit inclus à chaque demande
grâce à l'attribut once. Mettre l'attribut once à
false aura pour effet d'inclure le script PHP à chaque fois que demandé
dans le template.
Vous pouvez donner une valeur à l'attribut optionnel
assign, pour demander à la fonction
{include_php} d'assigner la sortie du script PHP
à la variable spécifiée plutôt que d'en afficher directement le résultat.
L'objet Smarty est disponible en tant que $this dans le script PHP inclus.
Fonction {include_php}load_nav.php
query("select * from site_nav_sections order by name",SQL_ALL);
$this->assign('sections',$sql->record);
?>
]]>
Où index.tpl est :
{$curr_section.name}
{/foreach}
]]>
Voir aussi
{include},
{php},
{capture}, les
ressources de template et les
"composants templates".