Я следующий фрагмент кода из Smarty шаблона:Как передать несколько аргументов функции smarty?
<div class="pagination">
{pagination_link_01 values=$pagination_links}
</div>
Следующая функция тела:
<?php
function smarty_function_pagination_link_01($params, &$smarty)
{
if (!is_array($params['values']))
{
return "is not array";
}
if (0 == count($params['values']))
{
return "Empty Array";
}
if (empty($params['values']['current_page']))
{
return "Invalid Request";
}
$values = $params['values'];
//Seperator Used Betwinn Pagination Links
$seprator = empty($params['seperator']) ? " " : $params['seperator'];
//Class Name For Links
$extra = empty($params['extra']) ? "" : $params['extra'];
$current_page = (int)$values['current_page'];
if (!empty($values['first']))
{
//$ret[] = "<a $extra href='{$values['first']}' ><First</a>";
}
if (!empty($values['previous']))
{
$ret[] = "<a $extra href='{$values['previous']}' class='prev active'><span></span></a>";
}
$ret[] = "<ul>";
foreach($values as $k => $v)
{
if(is_numeric($k))
{
if ($k == $current_page)
{
$ret[] = "<li><a $extra class='active'>$k</a></li>";
}
else
{
$ret[] = "<li><a $extra href='$v'>$k </a></li>";
}
}
}
if (!empty($values['next']))
{
$ret[] = "</ul><a $extra href='{$values['next']}' class='next active'><span></span></a>";
}
if (!empty($values['last']))
{
//$ret[] = "<a $extra href='{$values['last']}' >Last></a>";
}
//$str_ret = $first . $previous . $str_ret . $next . $last;
if ($ret)
{
return implode($seprator, $ret);
}
}
?>
Если я печатаю $params
я получаю значения я переданные с помощью массив $pagination_links
. Аналогично, я хочу добавить еще один аргумент с именем $total_pages
к вышеуказанному вызову функции и использовать его в теле функции. Я пробовал много способов, но этого не могло быть. Может ли кто-нибудь, пожалуйста, направить меня в этом отношении, пожалуйста. Заранее спасибо.