백엔드 개발 PHP 튜토리얼 php使用Smarty的相关注意事项及访问变量的几种方式_php模板_PHP

php使用Smarty的相关注意事项及访问变量的几种方式_php模板_PHP

Jun 01, 2016 pm 12:14 PM
smarty

$tpl=new Smarty();//新建一个smarty对象,我使用的是Smarty-3.1.6版本
1.设置smarty模板路径$tpl->setTemplateDir();默认情况下是templates
2.设置smarty模板编译路径$tpl->setCompileDir();默认情况下是templates_c
3.设置smarty模板引擎的左右 分隔符,

       $tpl->left_delimiter="

       $tpl->right_delimiter="}>";

       默认情况下:public $left_delimiter = "{";//smarty源代码

                        public $right_delimiter = "}";//smarty源代码

    为什么我们要改这些分隔符?

  因为比如在较早版本smarty引擎模板中,会报错,不能自动识别。
比如:

或者 javascript中
复制代码 代码如下:
<script> <BR>function show(){ <BR>alert("smarty"); <BR>} <BR></script>

这两种情况下,都有“左右大括号”,smarty引擎碰到会报错
4.初始化操作我们可以在外部另外创建一个初始化操作的php文件,如:smarty.ini.php。然后在php文件中包括进来即可
复制代码 代码如下:
include "../Smarty3.1.6/libs/Smarty.class.php";
$tpl=new Smarty();
$tpl->setTemplateDir("./Tpl");
$tpl->setTemplateDir("./Compile");
$tpl->left_delimiter="$tpl->right_delimiter="}>";
?>

5.使用smarty模板引擎的display函数或者include其他模板时,都得以smarty对象中指定的模板目录(比如:Tpl目录,默认是templates目录)为基目录。
  ①模板目录是:Tpl,该目录下存放着很多模板,有default,green,red模板,default模板目录下有很多模板文件(index.tpl、header.tpl、footer.tpl),此时display的正确用法:$tpl->display(“default/index.tpl”);即基目录下的default模板目录
  ②在模板文件(如:index.tpl)中包含其他模板文件时(如:header.tpl、footer.tpl),include的正确写法应该是: 、
  虽然index.tpl、header.tpl、footer.tpl都在同一个目录下,但是 、是错误的写法,这种情况,smarty引擎会到Tpl目录下找header和footer,而不是在default下面查找
6.如果要想让各个目录下的PHP程序都可以加载Smarty和使用Smarty指定的模板目录和编译目录,唯一的办法是使用绝对路径。
7.Smarty模板引擎中访问变量的方式(模板中的变量前记得加”$”符号)
①访问数组
索引数组:
   $tpl->assign("arr",array("aa","bb","cc"));
   $tpl->assign("arr2",array(array("二维数组一一","二维数组一二"),array("二维数组二一","二维数组二二")));
     访问索引数组:、、
   访问二维索引数组:、
关联数组:(使用 . 符号来访问)
   访问关联数组:、、
②访问对象
创建对象:  
复制代码 代码如下: 
class human{
private $sex;
private $name;
private $age;
public function __construct($s,$n,$a){
$this->sex=$s;
$this->name=$n;
$this->age=$a;
}
public function print_info(){
return $this->sex."--".$this->name."--".$this->age;
}
}
$tpl->assign("student",new human("male","MarcoFly",22));

给模板中的对象赋值:print_info()}>
8.Smarty模板引擎中的数学运算可以应用到模板变量中
给变量赋值
    $tpl->assign("num1",10);
    $tpl->assign("num2",5.5);
模板变量输出
     //结果10
     //结果5.5
     //结果15.5
    //结果13.025
原创文章
转载请注明:WEB开发_小飞

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 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를 기반으로 개발된 템플릿 엔진입니다.

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

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

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

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

스마티 SSTi 사용 방법 스마티 SSTi 사용 방법 May 15, 2023 am 11:37 AM

제목 설명: 제목에는 XFF 헤더를 읽을 수 있는 API가 제공됩니다. 페이지 하단에 BuildWithSmarty라는 단어가 있습니다. 기본적으로 해당 페이지가 가능성이 있다고 판단할 수 있습니다. SSTi의 xff 헤더를 127.0.0.1에서 다음 결과가 127.0.0{1+2}에 나타납니다. 최종 페이로드는 의심할 여지 없이 X-Forwarded-For:{ifvar_dump(file_get_contents('/flag'))}{ /if}SmartySSTI는 Smarty를 사용하며 PHP를 기반으로 개발되었습니다.

PHP 개발에 템플릿 엔진 Smarty 적용 PHP 개발에 템플릿 엔진 Smarty 적용 Jun 14, 2023 pm 02:02 PM

인터넷의 급속한 발전과 업그레이드로 인해 웹 애플리케이션 개발에 널리 사용되는 프로그래밍 언어인 PHP는 점차 업계에서 매우 인기 있는 프로그래밍 언어가 되었습니다. 그러나 PHP 개발 과정에서 전통적인 코드 구현 방법은 코드 가독성과 유지 관리 용이성을 저하시키는 경우가 많습니다. 이때 효율적인 템플릿 엔진이 솔루션 중 하나가 됩니다. 많은 템플릿 엔진 중에서 Smarty는 강력한 기능과 우수한 성능으로 인해 PHP 개발자들 사이에서 인기 있는 선택이 되었습니다. 이 기사에서는 자세히 설명합니다.

See all articles