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}

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

PHP와 Smarty를 사용하여 프런트엔드와 백엔드 분리 개발을 달성하는 방법 PHP와 Smarty를 사용하여 프런트엔드와 백엔드 분리 개발을 달성하는 방법 Jun 25, 2023 pm 01:46 PM

현대 웹 개발에서는 프런트엔드와 백엔드의 분리가 매우 대중적인 추세가 되었으며, 이를 통해 개발자는 프로젝트를 더 잘 구성하고 프로젝트 개발 효율성을 향상시킬 수 있습니다. PHP와 Smarty는 프런트엔드와 백엔드 분리 개발을 달성하는 데 사용할 수 있는 매우 일반적으로 사용되는 두 가지 기술입니다. 이 기사에서는 PHP와 Smarty를 사용하여 프런트엔드와 백엔드 분리 개발을 수행하는 방법을 소개합니다. 프론트엔드와 백엔드 분리 개발이란 무엇입니까? 전통적인 웹 개발에서 프론트엔드는 주로 페이지 표시와 백엔드와의 상호 작용 논리를 담당합니다. 백엔드는 주로 비즈니스를 담당합니다.

PHP의 템플릿 엔진인 Smarty에 대한 예비 연구 PHP의 템플릿 엔진인 Smarty에 대한 예비 연구 May 11, 2023 pm 05:15 PM

오늘날 웹사이트 개발은 중요한 구성 요소 템플릿 엔진과 분리될 수 없습니다. 템플릿 엔진은 페이지 템플릿과 데이터를 결합하여 특정 형식의 HTML 코드를 생성하는 도구를 말합니다. 다양한 웹사이트 개발 프레임워크에서 템플릿 엔진은 코드 중복을 크게 줄이고 페이지의 역동성을 향상시킬 수 있기 때문에 필수적인 구성 요소입니다. 가장 일반적이고 널리 사용되는 템플릿 엔진 중 하나는 Smarty입니다. Smarty는 DSL(DomainSpecif

PHP 개발에서 Smarty 템플릿 엔진을 사용하는 방법 PHP 개발에서 Smarty 템플릿 엔진을 사용하는 방법 Jun 27, 2023 pm 01:28 PM

PHP 개발자로서 템플릿 엔진을 사용하는 것은 자연스러운 선택입니다. Smarty는 HTML/CSS/JavaScript를 PHP 코드에서 분리하는 방법을 제공하여 개발자가 프로젝트를 더 잘 구성하고 관리할 수 있도록 하는 인기 있는 템플릿 엔진입니다. 이 기사에서는 PHP 개발 중에 Smarty 템플릿 엔진을 사용하는 방법을 알아봅니다. 1. Smarty 설치 먼저 Smarty를 설치해야 합니다. 이 기사에서는 Composer를 사용하여 설치하겠습니다.

PHP와 Smarty 템플릿 엔진을 사용하는 방법 PHP와 Smarty 템플릿 엔진을 사용하는 방법 May 11, 2023 pm 03:33 PM

PHP는 웹 애플리케이션을 개발하는 데 사용할 수 있는 강력한 서버측 스크립팅 언어입니다. 웹 개발 초기에 프로그래머들은 웹 애플리케이션을 개발하기 위해 HTML과 JavaScript 코드를 많이 사용했습니다. 그러나 이 접근 방식은 HTML 및 JavaScript 코드가 매우 복잡해지기 때문에 유지 관리가 어렵습니다. 이 문제를 해결하기 위해 Smarty 템플릿 엔진이 만들어졌습니다. Smarty는 W를 관리하고 생성하기 위해 PHP를 기반으로 개발된 템플릿 엔진입니다.

일반적으로 사용되는 Java 배열 방법의 비밀 공개: 프로그래밍 효율성을 향상시키는 비밀 일반적으로 사용되는 Java 배열 방법의 비밀 공개: 프로그래밍 효율성을 향상시키는 비밀 Jan 03, 2024 pm 02:38 PM

Java 배열의 일반적인 방법에 대한 심층적인 이해: 프로그래밍 효율성을 향상하려면 특정 코드 예제가 필요합니다. 소개: Java는 널리 사용되는 프로그래밍 언어이며 배열은 Java에서 일반적으로 사용되는 중요한 데이터 구조 중 하나입니다. Java 배열의 일반적인 방법에 대한 숙련도는 프로그래밍 효율성과 코드 품질을 향상시키는 데 매우 중요합니다. 이 기사에서는 Java 배열의 일반적인 방법을 자세히 살펴보고 독자가 이러한 방법을 더 잘 이해하고 적용하는 데 도움이 되는 특정 코드 예제를 제공합니다. 1. Java에서 배열 생성 및 초기화를 사용할 수 있습니다.

thinkphp와 smarty는 무엇인가? thinkphp와 smarty는 무엇인가? Jun 14, 2022 pm 05:56 PM

thinkphp는 ThinkPHP를 사용하여 엔터프라이즈 애플리케이션 개발과 민첩한 WEB 애플리케이션 개발을 단순화하는 데 사용되는 오픈 소스 경량 PHP 프레임워크입니다. 개발자는 애플리케이션을 보다 편리하고 빠르게 개발하고 배포할 수 있습니다. Smarty는 개발자가 프로그램 로직과 페이지 표시를 분리(비즈니스 로직과 표시 로직의 분리)하는 데 도움을 주어 프로그래머가 프론트 엔드 직원의 페이지 디자인에 영향을 주지 않고 프로그램의 로직 내용을 변경할 수 있도록 도와주는 PHP 템플릿 엔진입니다. 페이지를 수정해도 프로그램의 프로그램 로직에는 영향을 미치지 않습니다.

Vue 수명주기에 대한 자세한 설명 및 일반적인 방법에 대한 설명 Vue 수명주기에 대한 자세한 설명 및 일반적인 방법에 대한 설명 Jun 09, 2023 pm 04:07 PM

Vue는 프런트엔드 애플리케이션 개발에 사용되는 널리 사용되는 JavaScript 프레임워크입니다. 개발자가 대화형 웹 애플리케이션을 쉽게 구축할 수 있는 표현 기능을 제공합니다. Vue 라이프사이클은 Vue 컴포넌트가 런타임 중에 거치는 단계입니다. 이러한 단계를 통해 개발자는 컴포넌트 라이프사이클 동안 일부 핵심 코드를 실행할 수 있습니다. 이 기사에서는 Vue 라이프사이클과 일반적인 방법을 자세히 소개합니다. Vue 라이프사이클 Vue는 8가지 라이프사이클 후크를 제공합니다.

CakePHP와 함께 Smarty를 사용하는 방법은 무엇입니까? CakePHP와 함께 Smarty를 사용하는 방법은 무엇입니까? Jun 03, 2023 pm 03:10 PM

CakePHP는 웹 애플리케이션 개발을 가속화하는 풍부한 기능과 도구를 제공하는 오픈 소스 PHP 프레임워크입니다. 강력한 기능 중 하나는 템플릿 엔진입니다. 기본적으로 CakePHP는 뷰 렌더링을 위해 PHP의 기본 구문을 사용합니다. 그러나 때로는 Smarty와 같은 다른 템플릿 엔진을 사용하고 싶을 수도 있습니다. 이 기사에서는 CakePHP에서 Smarty를 사용하는 방법을 소개합니다. 1. 스마티란 무엇인가요? Smarty는 템플릿 기반 PHP 프레임워크입니다.

See all articles