Get Smarty

Donate

Paypal

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

Составные шаблоны

По традиции, программирование шаблонов в вашем приложении идёт следующим путём: Сначала вы формируете переменные внутри вашего приложения PHP (возможно, используя запросы к базе данных). Затем вы создаёте экземпляр объекта Smarty, назначаете переменные и отображаете шаблон. Давайте представим себе такую ситуацию: К примеру, у нас есть котировщик ценных бумаг в нашем шаблоне. Мы собираем данные о котировках ценных бумаг в нашем приложении, затем передаём эти переменные в шаблон и отображаем его. Правда, было бы здорово, если бы этот котировщик можно было перенести в другое приложение, просто подключив к нему шаблон, не беспокоясь об источнике данных.

Вы можете сделать это, написав собственное расширение для получения данных и присваивания их переменной шаблона.

Example 18.7. составной шаблон

function.load_ticker.php - поместите файл в директорию $plugins


<?php

// настраиваем нашу функцию для получения информации о ценных бумагах
function fetch_ticker($symbol)
{
   // здесь находится логика формирования $ticker_info
   // из какого-то источника
   return $ticker_info;
}

function smarty_function_load_ticker($params, &$smarty)
{
   // вызываем функцию
   $ticker_info = fetch_ticker($params['symbol']);

   // присваиваем переменную шаблона
   $smarty->assign($params['assign'], $ticker_info);
}
?>

   

index.tpl


{load_ticker symbol='SMARTY' assign='ticker'}

Stock Name: {$ticker.name} Stock Price: {$ticker.price}

   

См. также {include_php}, {include} и {php}.

Comments
No comments for this page.

Advertisement