Get Smarty

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:

Check reviews of PHP Web Hosting, compatible with Smarty Templates

{include_php}

Техническое замечание

{include_php} достаточно устарела в Smarty, вы можете достичь этой функциональности при помощи собственных функций шаблона. Единственная причина для использования {include_php} - это серьёзная необходимость отделить PHP-функцию от директории plugins или кода вашего приложения. См. примеры составных шаблонов для дополнительной информации.

Имя атрибута Тип Обязателен По умолчанию Описание
file string Да n/a Имя подключаемого php файла
once boolean Нет true Указывает подключать файл или нет, если он уже был однажды подключен
assign string Нет n/a Название переменной, которой будет присвоен вывод include_php

Тэги {include_php} используются для подключения PHP-скрипта в шаблон. Если режим $security включен, то PHP-скрипт должен быть расположен в директории $trusted_dir. Тэг {include_php} должен иметь атрибут "file", который указывает путь к подключаемому PHP-файлу, либо относительный к $trusted_dir, либо абсолютный путь.

По умолчанию, PHP-файлы подключаются только один раз, даже если вызываются несколько раз в шаблоне. Можно указать, что файл должен быть подключен каждый раз, указав атрибут once. Установив once в ложь (false) указывает, что файл должен быть подключен вне зависимости от того, был ли он подключен раньше.

Можно указать опциональный атрибут assign, который указывает имя переменной, которой будет присвоен вывод {include_php}, вместо отображения.

Объект smarty доступен в подключаемом PHP-файле как $this.

Example 7.21. Функция {include_php}

load_nav.php


<?php

// загружает переменные из БД MySQL и присваивает их шаблону
require_once('MySQL.class.php');
$sql = new MySQL;
$sql->query('select * from site_nav_sections order by name',SQL_ALL);
$this->assign('sections',$sql->record);

?>

  

index.tpl


{* абсолютный путь, либо относительный к $trusted_dir *}
{include_php file='/path/to/load_nav.php'}
{foreach item="curr_section" from=$sections}
    <a href="{$curr_section.url}">{$curr_section.name}</a><br />
{/foreach}

  

См. также {include}, {php}, {capture}, Ресурсы и Составные шаблоны

Comments
No comments for this page.
Post a Comment
All comments are moderated. Support questions are ignored, use the forums instead.
Author:
Email: (not shown)
What is 17 plus 19? (Are you human?)

Sponsors [info]

Cheap Website Hosting @hostdone.com
email marketing @ActiveCampaign
broadband deals @BroadbandGenie
Best UK Web Hosting @webhost.uk.net
Reliable UK and US Web Hosting @rshosting.com
Cheap US and UK Web Hosting @infrenion.com
I.T Certification Exams @pass-guaranteed.com
Certification Practice Tests @firsttrycertify.com
Certification Practice Exam Questions @ace-it-certifications.com
Broadband Speed Test @broadbandspeed.co.uk
bulk email software @americaint.com
ASP.NET hosting @aspnethosting.co.uk