作者:席昀2010_445_882 | 来源:互联网 | 2023-08-31 14:27
如$_GET, $_POST, $_COOKIE, $_SERVER, $_ENV 和 $_SESSION 可以通过下面的方式来使用:
Example 4.8. 显示页面请求变量
{* display value of page from URL ($_GET) http://www.example.com/index.php?page=foo *}
{$smarty.get.page}
{* display the variable "page" from a form ($_POST['page']) *}
{$smarty.post.page}
{* display the value of the COOKIE "username" ($_COOKIE['username']) *}
{$smarty.COOKIEs.username}
{* display the server variable "SERVER_NAME" ($_SERVER['SERVER_NAME'])*}
{$smarty.server.SERVER_NAME}
{* display the system environment variable "PATH" *}
{$smarty.env.PATH}
{* display the php session variable "id" ($_SESSION['id']) *}
{$smarty.session.id}
{* display the variable "username" from merged get/post/COOKIEs/server/env *}
{$smarty.request.username}
由于历史愿意,{$SCRIPT_NAME}变量会作为{$smarty.server.SCRIPT_NAME}的缩写。
a href="{$SCRIPT_NAME}?page=smarty" click me /a
a href="{$smarty.server.SCRIPT_NAME}?page=smarty" click me /a
虽然Smarty提供了较方便直接访问PHP超全局变量的方法,但必须谨慎使用。 直接访问超全局变量会弄乱应用程序底层代码和模板语法。 最佳的实践是从PHP将需要的变量对模板进行赋值再使用。
我们不应该在模板文件中直接访问php超全局变量,而应该在php中赋值给模板在使用。
更多: