本篇內容主要講解“smarty模板的數據變量有哪些以及調用方法是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“smarty模板的數據變量有哪些以及調用方法是什么”吧!
定義:模板變量,即在模板中被分配的變量,以及如何使用Smarty規則在模板中解析變量。
在Smarty模板中,我們將模板中的變量分為三類。
PHP分配變量,即利用assign方法分配的變量。
smarty保留變量,包括超全局預定義變量和smarty的內置變量。
自定義變量,用戶在模板中去定義變量。
1.PHP分配變量,理論上PHP可以分配任意數據類型給模板進行解析,通常數據其實也就三種:
標量數據:直接使用標記輸出的數據。
數組數據:在smarty模板中可以使用下標或者通過"."+下標來實現。
對象數據:在smarty模板中是通過對象訪問符來實現訪問。
<?php
require 'smarty/Smarty.class.php';
$smarty=new Smarty();
// $smarty->left_delimiter="<{";
// $smarty->right_delimiter="}>";
$smarty->template_dir = 'templates/'; //實際模板所在目錄,如果沒有會在根目錄下查找
//普通數據
$smarty->assign('hello',"hello world");
//數組
$smarty->assign('arr1',array(1412,14,23,456));
$smarty->assign('arr2',array('name'=>'張三','sex'=>'男'));
//對象
class Person{
public $name='陳平安';
public $perr='saber';
}
$smarty->assign('object1',new Person());
$smarty->display('model.html');
?><!DOCTYPE html>//模板 model.html
<html>
<head>
<title></title>
</head>
<body>
{$hello}這是templates下面的模板 <br>
這是索引數組:{$arr1[0]}---{$arr1[1]}------{$arr1[2]}<br>
這是索引數組:{$arr1.0}---{$arr1.1}------{$arr1.2}<br>
這是關聯數組:{$arr2.name}-----{$arr2.sex}<br>
這是對象:{$object1->name}-----------{$object1->perr}<br>
</body>
</html>2.Smarty保留變量:是smarty考慮到用戶會需要經常使用的系統變量,或者內部變量。這類變量通常以$smarty開始,然后是各類關鍵字,多次訪問。
GET數據:{$smarty.get.名字}
POST數據:{$smarty.post.名字}
session數據:{$smarty.session.名字}
cookie數據:{$smarty.cookies.名字}
REQUEST數據:{$smarty.request.名字}
server數據:{$smarty.server.大寫名字}
時間戳:{$smarty.now}
模板路徑:{$smarty.current_dir}
模板名字:{$smarty.template}
配置文件:{$smarty.config.配置名}
<html>
<header></header>
<body>
GET數據:{$smarty.get.name}
POST數據:{$smarty.post.name}
session數據:{$smarty.session.username}
cookie數據:{$smarty.cookies.username}
REQUEST數據:{$smarty.request.name}
server數據:{$smarty.server.SERVER_NAME}
時間戳:{$smarty.now}
模板路徑:{$smarty.current_dir}
模板名字:{$smarty.template}
</body>
</html>3.自定義變量:Smarty為了在模板中可以靈活的對數據進行處理,允許設置變量:{assign var='變量名' value='變量值'}。
<html>
<header></header>
<body>
{assign var='name' value='Sun'}
{$name}
</body>
</html>到此,相信大家對“smarty模板的數據變量有哪些以及調用方法是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。