smarty模板引擎基础知识入门
这篇文章主要介绍了smarty模板引擎基础知识入门,较为详细的分析了smarty的基本概念并实例分析了相关的基本用法,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了smarty模板引擎基础知识。分享给大家供大家参考。具体如下:
一、基本概念
1.什么是mvc?
mvc是一种开发模式,核心思想是:数据的输入、数据的处理、数据显示的强制分离。
2.什么是smarty?
smarty是一个php的模板引擎。更明确的来说,它可以帮助开发者更好的分离程序逻辑和页面显示。
3.smarty运行原理
模板文件,就是一个显示数据的模板,其中需要显示的数据用占位符代替。
smarty运行时,会读取模板文件,将模板文件中的占位符替换成真正的数据,并输出一个处理后的php文件,,交由服务器运行。
二、自己写一个smarty模板
为了更好的理解smarty模板,现在自己先写一个自己的smarty模板-minismarty,让自己更加深入的了解smarty运行原理。
1.新建项目minismarty
新建模板文件路径:templates
新建模板文件被编译后的文件路径:templates_c
新建模板文件:intro.tpl
新建运行的文件:index.php
新建自己的smarty,即处理模板的文件:cls_MiniSmarty.php
2.编写index.php文件
assign("title","hello minismarty!"); $miniSmarty->assign("content","this is content!"); //传递数据到哪个页面显示 $miniSmarty->display("intro.tpl"); ?>
3.编写intro.tpl文件
è¿éé¢çå
容æ¯ç¨å ä½ç¬¦çå½¢å¼ï¼smartyçä½ç¨å°±æ¯å°å ä½ç¬¦çå
容æ¿æ¢æçæ£çæ°æ®ã
è¿æ ·å°±å¯ä»¥å®ç°æ¨¡æ¿æ件åæ°æ®æ件强å¶å离ï¼éè¿smartyè¿è¡æ°æ®çä¼ éã
4.ç¼åcls_MiniSmarty.phpæ件
tpl_vars[$tpl_var] = $var; //å°æ°æ®æ·»å å°æ°ç»ä¸ } } /** * æ¾ç¤ºæ°æ® * åæ°1ï¼æ¾ç¤ºå°åªä¸ªæ¨¡æ¿æä»¶ä¸ */ function display($tpl_file) { //è·å¾æ¨¡æ¿æ件çè·¯å¾ $tpl_file_path = $this->template_dir . $tpl_file; //è·å¾æ¨¡æ¿æ件被ç¼è¯åçæä»¶è·¯å¾ $compile_file_path = $this->templates_c_dir . "com_" . $tpl_file . ".php"; //å¤ææ件æ¯å¦åå¨ if (!file_exists($tpl_file_path)) { return false; } //ä¸ç¨æ¯æ¬¡é½çæç¼è¯æ件,åªæç¼è¯æ件ä¸åå¨æè 模æ¿æ件被修æ¹äºæçææ°çç¼è¯æ件 //ç¸å½äºç¼åäºç¼è¯æ件 //filemtimeå½æ°ï¼è·å¾æ件ççææ¶é´ if (!file_exists($compile_file_path) || filemtime($tpl_file_path) > filemtime($compile_file_path)) { //读å模æ¿æ件çå 容 $fpl_file_content = file_get_contents($tpl_file_path); $newStr = myReplace($fpl_file_content); //å°æ¿æ¢åçå符串çææ°çæ件ï¼ä¹å°±æ¯ç¼è¯åçæ件 file_put_contents($compile_file_path, $newStr); } //å¼å ¥ç¼è¯åçæ件 include $compile_file_path; } /** * 对模æ¿æ件ä¸çå 容è¿è¡æ¿æ¢ï¼è·å¾æ°çå符串 */ function myReplace($fpl_file_content) { $pattern = array ( '/\{\s*\$([a-zA-Z_][a-zA-Z0-9_]*)\s*\}/i' ); $replace = array ( 'tpl_vars["${1}"] ?>' ); $newStr = preg_replace($pattern, $replace, $fpl_file_content); return $newStr; } } ?>
preg_replaceæ¹æ³ä»ç»ï¼
åæ°1ï¼æ¿æ¢çè§å
åæ°2ï¼æ¿æ¢æçå
容
åæ°3ï¼æ¿æ¢æä½çå
容
5.è¿è¡ç»æ
æ é¢åå 容é½æ¾ç¤ºåºæ¥äº:
ç»è®ºï¼
çæ£è¿è¡çæ件ï¼æ¢ä¸æ¯index.phpï¼ä¹ä¸æ¯intro.phpï¼èæ¯äºè
éè¿smartyä½ç¨åçæ件:
com_intro.tpl.phpãè¿ä¸ªæ件ä¸æ°æ®æ¥æºäºindex.phpï¼æ¾ç¤ºçå¸å±æ¥èªintro.tplï¼ä¸é´çæ¡¥æ¢æ¯smartyã
smartyçä½ç¨æ¯æ¥åæ°æ®ãå¡«å
æ°æ®ï¼æ¿æ¢æ¨¡æ¿ä¸çå ä½ç¬¦ï¼ã并å è½½æ¿æ¢åçæ件ã
ä¸ã讲解smarty使ç¨ç»è
1.å¦ä½é ç½®smarty?
解ååï¼å°libsæ件夹æ·è´å°é¡¹ç®ç®å½ä¸å³å¯ï¼ç¶ååå建2个æ件夹templatesåtemplates_cï¼åå«æ¾æ¨¡æ¿æ件å模æ¿ç¼è¯åæ件ã
2.使ç¨smarty注æäºé¡¹
â æ¿æ¢åéçæ 示符ã
å 为é»è®¤ç表示符æ¯{}è¿ä¸ªåstyleæ ·å¼ä¸ç{}åçå²çªï¼æ以éè¦ä¿®æ¹ä¸ä¸é»è®¤çæ è¯ç¬¦ï¼ä¸è¬ä¿®æ¹ä¸ºï¼{}
â¡ä¿®æ¹æ è¯ç¬¦çæ¹æ³ã
æ¹æ³ä¸ï¼ç´æ¥ä¿®æ¹smartyç±»æºç ï¼ä¸æ¨èã
æ¹æ³äºï¼ä½¿ç¨smartyæä¾çæ¹æ³è¿è¡ä¿®æ¹ã
$smarty->left_delimiter="{right_delimiter=">}";
â¢smartyçä¸äºåºæ¬é
ç½®
$smarty->template_dir="./templates";//模æ¿è·¯å¾ $smarty->compile_dir="./templates_c";//ç¼è¯è·¯å¾ $smarty->caching=false; //æ¯å¦ä½¿ç¨ç¼å $smarty->cache_dir="./smarty_cache";//å¦æ使ç¨ç¼åçè¯ï¼ç¼åçè·¯å¾
3.smarty模æ¿ææ¯åé åéçç»èé®é¢
ä¸å¥è¯ï¼å¯ä»¥åé
phpæ¯æçåç§æ°æ®ã
phpåºæ¬æ°æ®ï¼int double string bool
å¤åæ°æ®ç±»åï¼array object
ç¹æ®æ°æ®ç±»åï¼resource null
å¸ææ¬ææ述对大家çphpç¨åºè®¾è®¡ææ帮å©ã

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

In den letzten Jahren hat sich die Template-Engine in der PHP-Programmierung zu einem wichtigen Bestandteil der PHP-Entwicklung entwickelt und erleichtert Programmierern die Entwicklung und Verwaltung von Seiten. In diesem Artikel werden gängige Template-Engines in der PHP-Programmierung vorgestellt. SmartySmarty ist eine häufig verwendete PHP-Vorlagen-Engine. Sie unterstützt eine Reihe von Funktionen wie zwischengespeicherte Vorlagen, Plug-in-Module und benutzerdefinierte Funktionen. Die Syntax von Smarty ist sehr flexibel und kann das Problem der Kombination von PHP-Variablen mit HTML-Tags lösen, wodurch die PHP-Sprache besser für Vorlagendesign geeignet wird. Darüber hinaus hat S

Erste Schritte mit der Golang Template Engine: So verwenden Sie Vorlagen in Golang. Es sind spezifische Codebeispiele erforderlich. Einführung: Eine Template Engine ist ein Tool, das Daten und Vorlagen kombinieren und Dokumente in HTML, Text oder anderen Formaten generieren kann. In Golang können wir das integrierte Vorlagenpaket (html/template) verwenden, um die Funktionen der Template-Engine zu implementieren. In diesem Artikel wird die Verwendung der Template-Engine in Golang im Detail vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Das Grundkonzept der Template-Engine besteht darin, zu verstehen, wie man sie verwendet.

Anleitung zur Verwendung der ThinkPHP6-Template-Engine: Erstellen Sie eine exquisite Front-End-Schnittstelle. Einführung: Mit der Entwicklung von Webanwendungen sind das Design und die Entwicklung von Front-End-Schnittstellen immer wichtiger geworden. Als Entwickler müssen wir eine leistungsstarke Template-Engine verwenden, die uns bei der Erstellung und Verwaltung von Front-End-Schnittstellen unterstützt. Die Template-Engine von ThinkPHP6 ist ein leistungsstarkes Tool, um diesen Bedarf zu decken. In diesem Artikel wird erläutert, wie Sie mit der ThinkPHP6-Vorlagen-Engine eine schöne Front-End-Schnittstelle erstellen. Teil 1: Installieren Sie die ThinkPHP6-Vorlagen-Engine

Fat-Free Framework ist ein leichtes PHP-Framework, das einfache und flexible Tools zum Erstellen von Webanwendungen bereitstellt. Es enthält viele nützliche Funktionen wie Routing, Datenbankzugriff, Caching usw. Im Fat-Free-Framework kann uns die Verwendung der Blade-Vorlagen-Engine dabei helfen, Vorlagen bequemer zu verwalten und zu rendern. Blade ist die Template-Engine im Laravel-Framework, die leistungsstarke Syntax- und Template-Vererbungsfunktionen bietet. In diesem Artikel werde ich zeigen, wie man Bl im Fat-Free-Framework verwendet

MySQL ist ein relationales Open-Source-Datenbankverwaltungssystem, das häufig in der Entwicklung von Webanwendungen und der Datenspeicherung eingesetzt wird. Das Erlernen der SQL-Sprache von MySQL ist für Datenmanager und Entwickler unbedingt erforderlich. Die SQL-Sprache ist der Kernbestandteil von MySQL. Bevor Sie MySQL lernen, müssen Sie die SQL-Sprache vollständig verstehen. Dieser Artikel soll Ihnen die Grundkenntnisse von SQL-Anweisungen im Detail erklären, damit Sie SQL-Anweisungen Schritt für Schritt verstehen können Schritt. SQL ist die Abkürzung für Structured Query Language, die in relationalen Daten verwendet wird

Mit der Entwicklung der Internettechnologie steigt auch die Nachfrage nach Webanwendungen. Webentwickler verwenden häufig Template-Engines, um dynamische Webseiten zu generieren. In diesem Artikel wird eine neue Vorlagen-Engine untersucht: die Go-Sprachvorlagen-Engine. Was ist die Go-Sprachvorlagen-Engine? Go Language ist eine von Google entwickelte fortgeschrittene Programmiersprache. Die Syntax ist prägnant und klar, sodass sie leicht zu erlernen und zu verwenden ist. Die Go-Sprachvorlagen-Engine ist ein Vorlagensystem, das zum Generieren von HTML-Vorlagen in der Go-Sprache verwendet wird. Die Go-Sprachvorlagen-Engine wird als „Standardbibliothek“ bezeichnet.

Von Grund auf neu beginnen: Einführung in die Grundlagen des Erlernens der Go-Sprache. Die Go-Sprache, auch bekannt als Golang, ist eine von Google entwickelte Open-Source-Programmiersprache. Sie wurde 2009 veröffentlicht und entwickelte sich schnell zu einer beliebten Sprache, insbesondere in Bereichen wie Webentwicklung, verteilten Systemen und Cloud Computing. Die Go-Sprache ist für ihre Einfachheit, Effizienz und starke Parallelität bekannt. Grundlegende Syntax 1. Variablen und Konstanten In der Go-Sprache werden Variablen und Konstanten typisiert. Variablen können Daten speichern, während Konstanten nicht geändert werden können. Das Deklarationsformat von Variablen ist: v

PHP ist eine in der Webentwicklung weit verbreitete Sprache. Egal, ob Sie eine kleine Website oder ein großes System entwickeln, PHP ist sehr beliebt und praktisch. Im PHP-Entwicklungsprozess müssen wir die Logik- und Datenebene trennen, was den Einsatz einer Template-Engine erfordert. Die Template-Engine kann einfach so verstanden werden, dass sie Daten und Template-Dateien zusammenführt, um die endgültige HTML-Datei zu generieren. In diesem Artikel stellen wir einige der besten in PHP verfügbaren Template-Engines vor. SmartySmarty ist eine der beliebtesten Template-Engines in PHP,
