Heim php教程 php手册 smarty中常用方法实例总结

smarty中常用方法实例总结

Jun 06, 2016 pm 07:48 PM
smarty 常用方法

这篇文章主要介绍了smarty中常用方法,较为详细的分析了smarty模板中较为常用的方法、属性及环境变量等使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例总结了smarty中常用方法。分享给大家供大家参考。具体如下:

1. Smarty中foreach的index、iteration的使用

.index包含当前数组索引,从零开始。

index示例

{* The header block is output every five rows *} {* 每五行输出一次头部区块 *}

{foreach from=$items key=myId item=i name=foo} {if $smarty.foreach.foo.index % 5 == 0} {/if} {/foreach}
Title
{$i.label}

.iteration包含当前循环次数,与index不同,从1开始,每次循环增长1。

iteration和index示例

{* this will output 0|1, 1|2, 2|3, ... etc *} {* 该例将输出0|1, 1|2, 2|3, ... 等等 *} {foreach from=$myArray item=i name=foo} {$smarty.foreach.foo.index}|{$smarty.foreach.foo.iteration}, {/foreach}

2. smarty中section的嵌套使用

示例1:

$bookmarks = array('0' => array('name'=> 'n1', 'url'=>'url2'), '1' => array('name'=> 'n21', 'url'=>'url22')); $categories= array('0' => array('cate_id'=> 'n1', 'cate_name'=>'url2'), '1' => array('cate_id'=> 'n21', 'cate_name'=>'url22')); {section loop=$bookmarks} Name:$bookmarks[bm].name URL:$bookmarks[bm].url {section loop=$categories[bm]} $categories[bm][cate].cate_id $categories[bm][cate].cate_name {/section} {/section} ::::

示例2:

$lists = array(); for(...){ $oneList['dateTime'] = date("Y-m-d"); $oneList['detailList'] = array(); for(....){ $oneList['detailList'][$j]['count'] = $onecout; $oneList['detailList'][$j]['title'] = $onetitle; } $lists[] = $oneList; } ::::: {section name=loop loop=$lists} {$lists[loop].dateTime} {section name=loop2 loop=$lists[loop]["detailList"]} {$lists[loop]['detailList'][loop2].title} {$lists[loop]["detailList"][loop2].count} {/section} {/section}

3. 其他常用关键字

    name: section的名称,不用加$;
    $loop: 要循环的变量,程度中要使用assign对这个变量进行操作。
    $start: 开始循环的下标。默认为0;
    $step: 每次循环下标的增数;
    $show : boolean型。决定是否对于这块进行显示。默认为true;

的属性;

    index:循环下标。默认为0;
    index_prev:当前下标的上一个值,默认为-1;
    index_next:当前下标的下一个值,默认为1;
    first:是否为第一下循环;
    last:是否为最后一个循环;
    iteration:循环个数;
    rownum:当前行号,iteration的别名;
    loop:最后一个循环号。Section的循环次数;
    show:是否显示;

新闻编号:
新闻内容:
I am sorry

if用法:

{if $list[row].name eq "1"} 星期1 {elseif $list[row].name=="2"} 星期2 {else} 默认 {/if}

4. smarty 系统变量

{* 显示URL中的page值($_GET)?page=foo *}
{$smarty.get.page}
{* 显示来自一个表单的"page"变量($_POST['page'])*}
{$smarty.post.page}
{* 显示COOKIE变量"username"的值($_COOKIE['username'])*}
{$smarty.cookies.username}
{* 显示服务器变量"SERVER_NAME"($_SERVER['SERVER_NAME'])*}
{$smarty.server.SERVER_NAME}
{$smarty.server.PHP_SELF}
{$smarty.server.SCRIPT_NAME}
{* 显示系统环境变量"PATH" *}
{$smarty.env.PATH}
{* 显示PHP会话变量"id"($_SESSION['id'])*}
{$smarty.session.id}
{* 显示变量"username",不论来自get/post/cookies/server/env *}
{$smarty.request.username}
$smarty}保留变量可以被用于访问一些特殊的模板变量,以下是全部页面请求变量。

以下是访问页面请求变量诸如get,post,cookies,server,enviroment和session变量的例子. 例如{$smarty.server.SERVER_NAME}取得服务器变量,{$smarty.env.PATH}取得系统环境变量path,{$smarty.request.username}取得get/post/cookies/server/env的复合变量。

{$smarty.now}变量用于访问当前时间戳.
可以用 date_format调节器格式化输出. 例如{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}

{$smarty.const}
你可以直接访问PHP常量. 例如{$smarty.const._MY_CONST_VAL}

{$smarty.capture}
可以通过{capture}..{/capture}结构 截取的输出可以使用{$smarty} 变量访问.

{$smarty.config}
{$smarty}变量 可以访问已经加载的config变量.

例如 {$smarty.config.foo}就可以表示 {#foo#}.

{$smarty.section}, {$smarty.foreach}
{$smarty} 变量可以访问'section'和'foreach'循环的属性.
{$smarty.template}
显示当前被处理的模板的名字.
{$smarty.version}
显示smarty模板的版本
{$smarty.ldelim}
显示左分隔符
{$smarty.rdelim}

显示右分隔符$smarty}保留变量可以被用于访问一些特殊的模板变量,以下是全部页面请求变量。

以下是访问页面请求变量诸如get,post,cookies,server,enviroment和session变量的例子. 例如{$smarty.server.SERVER_NAME}取得服务器变量,,{$smarty.env.PATH}取得系统环境变量path,{$smarty.request.username}取得get/post/cookies/server/env的复合变量。

{$smarty.now}变量用于访问当前时间戳.
可以用 date_format调节器格式化输出. 例如{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}
{$smarty.const}

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So verwenden Sie PHP und Smarty, um eine Front-End- und Back-End-Trennentwicklung zu erreichen So verwenden Sie PHP und Smarty, um eine Front-End- und Back-End-Trennentwicklung zu erreichen Jun 25, 2023 pm 01:46 PM

In der modernen Webentwicklung ist die Trennung von Front-End und Back-End zu einem sehr beliebten Trend geworden, der es Entwicklern ermöglicht, Projekte besser zu organisieren und die Effizienz der Projektentwicklung zu verbessern. PHP und Smarty sind zwei sehr häufig verwendete Technologien, mit denen eine Front-End- und Back-End-Trennungsentwicklung erreicht werden kann. In diesem Artikel wird erläutert, wie Sie mit PHP und Smarty eine Front-End- und Back-End-Trennungsentwicklung erreichen. Was ist Front-End- und Back-End-Trennung? Bei der traditionellen Webentwicklung ist das Front-End hauptsächlich für die Darstellung der Seite und die Logik der Interaktion mit dem Back-End verantwortlich. Das Backend ist hauptsächlich für das Geschäft verantwortlich

Eine vorläufige Studie zu Smarty, der Template-Engine in PHP Eine vorläufige Studie zu Smarty, der Template-Engine in PHP May 11, 2023 pm 05:15 PM

Heutzutage ist die Website-Entwicklung untrennbar mit einer wichtigen Komponenten-Template-Engine verbunden. Eine Template-Engine bezieht sich auf ein Tool, das Seitenvorlagen und Daten kombiniert, um HTML-Code mit einem bestimmten Format zu generieren. In verschiedenen Website-Entwicklungsframeworks ist die Template-Engine eine wesentliche Komponente, da die Template-Engine die Duplizierung von Code erheblich reduzieren und die Dynamik der Seite verbessern kann. Eine der gebräuchlichsten und beliebtesten Template-Engines ist Smarty. Smarty ist ein DSL (DomainSpecif

So verwenden Sie die Smarty-Template-Engine in der PHP-Entwicklung So verwenden Sie die Smarty-Template-Engine in der PHP-Entwicklung Jun 27, 2023 pm 01:28 PM

Als PHP-Entwickler ist die Verwendung einer Template-Engine eine natürliche Wahl. Smarty ist eine beliebte Template-Engine, die eine Möglichkeit bietet, HTML/CSS/JavaScript vom PHP-Code zu trennen, sodass Entwickler Projekte besser organisieren und verwalten können. In diesem Artikel erfahren Sie, wie Sie die Smarty-Template-Engine während der PHP-Entwicklung verwenden. 1. Smarty installieren Vorher müssen wir Smarty installieren. In diesem Artikel verwenden wir Composer zur Installation

Enthüllte Geheimnisse häufig verwendeter Java-Array-Methoden: Geheimnisse zur Verbesserung der Programmiereffizienz Enthüllte Geheimnisse häufig verwendeter Java-Array-Methoden: Geheimnisse zur Verbesserung der Programmiereffizienz Jan 03, 2024 pm 02:38 PM

Vertiefendes Verständnis der gängigen Methoden von Java-Arrays: Der Schlüssel zur Verbesserung der Programmiereffizienz erfordert spezifische Codebeispiele. Einführung: Java ist eine beliebte Programmiersprache und Arrays sind eine der am häufigsten verwendeten und wichtigen Datenstrukturen in Java. Die Beherrschung gängiger Methoden von Java-Arrays ist für die Verbesserung der Programmiereffizienz und Codequalität von großer Bedeutung. In diesem Artikel werden gängige Methoden von Java-Arrays erläutert und spezifische Codebeispiele bereitgestellt, um den Lesern zu helfen, diese Methoden besser zu verstehen und anzuwenden. 1. Wir können Arrays in Java erstellen und initialisieren

So verwenden Sie PHP und die Smarty-Template-Engine So verwenden Sie PHP und die Smarty-Template-Engine May 11, 2023 pm 03:33 PM

PHP ist eine leistungsstarke serverseitige Skriptsprache, die zur Entwicklung von Webanwendungen verwendet werden kann. In den Anfängen der Webentwicklung verwendeten Programmierer viel HTML- und JavaScript-Code, um Webanwendungen zu entwickeln. Allerdings ist dieser Ansatz schwer zu warten und zu verwalten, da der HTML- und JavaScript-Code sehr komplex werden kann. Um dieses Problem zu lösen, wurde die Smarty-Template-Engine erstellt. Smarty ist eine auf PHP basierende Template-Engine zur Verwaltung und Generierung von W

Was sind Thinkphp und Smarty? Was sind Thinkphp und Smarty? Jun 14, 2022 pm 05:56 PM

thinkphp ist ein Open-Source-Leichtbau-PHP-Framework, das zur Vereinfachung der Entwicklung von Unternehmensanwendungen und der agilen WEB-Anwendungsentwicklung verwendet wird. Mit ThinkPHP können Entwickler Anwendungen bequemer und schneller entwickeln und bereitstellen. Smarty ist eine PHP-Vorlagen-Engine, die Entwicklern dabei helfen kann, Programmlogik und Seitenanzeige (Trennung von Geschäftslogik und Anzeigelogik) besser zu trennen, sodass Programmierer den logischen Inhalt des Programms ändern können, ohne das Seitendesign des Front-End-Personals zu beeinträchtigen. und das Front-End-Personal kann erneut Änderungen an der Seite vornehmen, ohne dass sich dies auf die Programmlogik des Programms auswirkt.

Detaillierte Erläuterung des Vue-Lebenszyklus und Beschreibung gängiger Methoden Detaillierte Erläuterung des Vue-Lebenszyklus und Beschreibung gängiger Methoden Jun 09, 2023 pm 04:07 PM

Vue ist ein beliebtes JavaScript-Framework zur Entwicklung von Front-End-Anwendungen. Es bietet ausdrucksstarke Funktionen, mit denen Entwickler problemlos interaktive Webanwendungen erstellen können. Der Vue-Lebenszyklus umfasst die Phasen, die eine Vue-Komponente während der Laufzeit durchläuft. Diese Phasen ermöglichen Entwicklern die Ausführung einiger Schlüsselcodes während des Komponentenlebenszyklus. In diesem Artikel werden der Vue-Lebenszyklus und seine gängigen Methoden ausführlich vorgestellt. Vue-Lebenszyklus Vue bietet 8 verschiedene Lebenszyklus-Hooks, die unterschiedlich sind

So verwenden Sie Smarty SSTi So verwenden Sie Smarty SSTi May 15, 2023 am 11:37 AM

Titelbeschreibung: Der Titel stellt eine API zum Lesen von XFF-Headern bereit. Es kann festgestellt werden, dass die Seite mit der Smarty-Engine geschrieben wurde SSTi. Ändern Sie den xff-Header von 127.0.0.1 in. Das folgende Ergebnis erscheint auf 127.0.0{1+2}. Die endgültige Nutzlast ist zweifellos X-Forwarded-For:{ifvar_dump(file_get_contents('/flag'))}{/. if}SmartySSTI verwendet Smarty und wurde auf Basis von PHP für Smarty entwickelt

See all articles