RYN*_*RYN 6 php variables smarty
我有一个php文件,它有一些本地和全局变量(例如$ foo)
,从这个文件调用一个聪明的对象.
如何在不更改PHP文件的情况下从smarty脚本访问$ foo?
谢谢
Dar*_*son 10
如果你有一个名为BASE的常量变量,并且定义如下:
define('BASE', 'Boise');
Run Code Online (Sandbox Code Playgroud)
您可以通过以下方式访问smarty中的变量:
$smarty.const.BASE
Run Code Online (Sandbox Code Playgroud)
您曾经能够通过使用{php}{/php}标签解决这个问题,但由于不推荐使用,现在您必须通过自己分配变量$smarty->assign(),唯一的例外是您仍然可以通过$smarty对象直接访问的常量和服务器变量.
({php}如果您愿意,也可以重新启用标签,并且不关心它们首先被禁用的潜在安全原因).
任何请求变量如$_GET,$_POST,$_COOKIE,$_SERVER,$_ENV和$_SESSION通过提供$smarty对象.
因此 - 我使用的大多数数据都可以通过$smarty对象轻松访问,而无需创建大量(复制)变量.
例如.:
{$smarty.const.MY_CONST_VAL}{$smarty.server.REQUEST_METHOD}// 可以访问$ _SERVER中的所有内容{$smarty.session.MY_SESSION_VAL}// $ _SESSION中的所有内容都可用你不能。您必须将其分配给 PHP 文件中的 smarty。
$smarty->assign('foo', $foo);
Run Code Online (Sandbox Code Playgroud)