Как я могу получить текущий URL, используя Smarty Как получить URL, используя Smarty, аналогично window.location в JavaScript? Я сделал это {$smarty.server.PHP_SELF} но это не работает. Ответ 1 Вы также можете использовать это. {$smarty.server.HTTP_HOST}{$smarty.server.REQUEST_URI} Ответ 2 Это код контроллера: <?php require_once('libs/Smarty.class.php'); $smarty = new Smarty(); if (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == "on") { $pro = 'https'; } else { $pro = 'http'; } $port = ($_SERVER["SERVER_PORT"] == "80") ? "" : (":".$_SERVER["SERVER_PORT"]); $current_url = $pro."://".$_SERVER['SERVER_NAME'].$port.$_SERVER['REQUEST_URI']; $smarty->assign("current_url",$current_url); $smarty->display('index.tpl'); ?> Вы можете отображать переменную в файле шаблона index.tpl: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Title</title> </head> <body> {$current_url} </body> </html> Ответ 3 Посмотрите, что доступно с этим: {$smarty.server|@var_dump} Несколько примеров для URL https://some.example.com/some/path?param=1: {$smarty.server.SCRIPT_URI} https://some.example.com/some/path {$smarty.server.SERVER_NAME} some.example.com {$smarty.server.SCRIPT_URL} /Некоторые/путь
Ответ 2 Это код контроллера: <?php require_once('libs/Smarty.class.php'); $smarty = new Smarty(); if (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == "on") { $pro = 'https'; } else { $pro = 'http'; } $port = ($_SERVER["SERVER_PORT"] == "80") ? "" : (":".$_SERVER["SERVER_PORT"]); $current_url = $pro."://".$_SERVER['SERVER_NAME'].$port.$_SERVER['REQUEST_URI']; $smarty->assign("current_url",$current_url); $smarty->display('index.tpl'); ?> Вы можете отображать переменную в файле шаблона index.tpl: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Title</title> </head> <body> {$current_url} </body> </html>
Ответ 3 Посмотрите, что доступно с этим: {$smarty.server|@var_dump} Несколько примеров для URL https://some.example.com/some/path?param=1: {$smarty.server.SCRIPT_URI} https://some.example.com/some/path {$smarty.server.SERVER_NAME} some.example.com {$smarty.server.SCRIPT_URL} /Некоторые/путь