użyłeś być można to obejść za pomocą tagów {php}{/php}
, ale ponieważ jest to przestarzałe, teraz musisz przypisać zmienne za pomocą $smarty->assign()
, jedynym wyjątkiem są stałe i zmienna serwera es, do którego nadal masz bezpośredni dostęp za pośrednictwem obiektu $smarty
.
(Możesz również ponownie włączyć znaczniki {php}
, jeśli chcesz, a nie dbają o potencjalne zabezpieczenia, dla których zostały wyłączone w pierwszej kolejności).
Każda ze zmiennych żądanie takie jak $_GET
, $_POST
, $_COOKIE
, $_SERVER
, $_ENV
i $_SESSION
są dostępne na obiekcie $smarty
.
Z tego powodu - większość danych, z którymi pracuję, można łatwo uzyskać za pośrednictwem obiektu $smarty
bez konieczności tworzenia ton (zmienionych) zmiennych.
np .:
- Dostęp stały:
{$smarty.const.MY_CONST_VAL}
- Dostęp do $ _SERVER var:
{$smarty.server.REQUEST_METHOD}
// Everything in $_SERVER dostępną
- chwytając coś z $ _SESSION:
{$smarty.session.MY_SESSION_VAL}
// Everything in $_SESSION jest dostępny
Musisz przypisać zmienną do obiektu smarty lub smarty nie będzie mógł uzyskać do niego dostępu. Nie ma magicznej różdżki, aby to obejść. – rdlowrey