Smarty, если URL содержит
Используя теги Smarty, я бы хотел определить, содержит ли URL слово, например:
{if $smarty.get.page contains "product.php"} .....
Я знаю, что содержимого не существует, но как я могу легко написать что-то похожее для достижения вышеуказанного кода?
2 ответа
Решение
Ты можешь использовать strpos
проверить, есть ли в строке другая строка внутри нее.
$pos = strpos($smarty.get.page, "product.php");
if($pos !== false) {
// found, do something
}
За исключением того, что вам нужно обернуть его {php}
а также {/php}
,
$smarty.get.page
переводит на $_GET['page']
, так что вы также можете заменить его на переменную GET.
Все условные выражения и функции PHP распознаются, такие как ||, или, &&, и is_array() и т. Д.
{if strpos($smarty.get.page, "product.php") !== false}