2011-11-26 12 views
8

Korzystanie Smarty Tagi Chciałbym ustalić, czy adres URL zawiera słowo, coś jak:Smarty Jeśli URL zawiera

{if $smarty.get.page contains "product.php"} ..... 

Wiem zawiera nie istnieje, ale jak mogę łatwo przejść o pisaniu czegoś podobne do osiągnięcia powyższego kodu?

Odpowiedz

4

Możesz użyć strpos, aby sprawdzić, czy ciąg zawiera w sobie inny ciąg znaków.

$pos = strpos($smarty.get.page, "product.php"); 

if($pos !== false) { 
// found, do something 
} 

wyjątkiem musisz zawinąć go w {php} i {/php}.

$smarty.get.page tłumaczy się na $_GET['page'], więc można go również zastąpić zmienną GET.

+0

Postaram tego, ale wierzę w to może nie działać, chyba że strpos jest metodą kodu smarty - dziękuję za odpowiedź – 99823

+0

To zadziała, ponieważ 'strpos' jest metodą PHP. Powodzenia, i nie krępuj się zaakceptować, jeśli to działa :) – tekknolagi

+0

@Loren zapomniałem oznaczyć Cię, przepraszam – tekknolagi

23

Wszystko warunkowe i funkcje są uznane PHP, takie jak || lub, & & oraz, is_array() itp

{if strpos($smarty.get.page, "product.php") !== false}

+0

oh ... ha, ha: P – tekknolagi

+0

to działało bardzo dobrze, ale musiałem zaakceptować tekk, ponieważ spędził tyle czasu pomagając mi, ale dziękuję bardzo za pomoc, jak również – 99823