Получить имя каталога из пути только в Smarty - PullRequest
0 голосов
/ 30 мая 2011

Я не могу назначить свою собственную функцию PHP. (у меня просто есть доступ к файлу TPL).

Пока что я получил {$smarty.server.PHP_SELF}, который возвращает что-то вроде /foo/bar.xin.Со встроенными функциями я бы хотел получить /foo/.

Ответы [ 3 ]

1 голос
/ 23 мая 2012

{$smarty.server.PHP_SELF | dirname} вернет /foo при условии, что функция dirname включена (см. php_modifiers в Настройки безопасности Smarty ).

1 голос
/ 30 мая 2011

Как я уже заметил, теги {php} устарели, но вы можете сделать следующее:

{php}
$php_self = $_SERVER['PHP_SELF'];
$path = substr($php_self, 0, strrpos($php_self, '/'));
// assign a variable to Smarty
$this->assign('path',$path);
{/php}
Path: <strong>{$path}</strong>

Я не смог проверить это, так как у меня нет парсера на моем компьютере.распоряжение, но оно следует примеру на странице документации Smarty:

http://www.smarty.net/docs/en/language.function.php.tpl

0 голосов
/ 12 сентября 2014
{$smarty.server.DOCUMENT_ROOT}  

вернет путь к серверу

...