国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Inhaltsverzeichnis
{$site_name}" >{$site_name}
{$blog.title}" >{$blog.title}
·使用tmd_tpl模板引擎之后
·不用tmd_tpl的話,我們來看看Discuz!和DedeCMS的模板。
Heim php教程 php手冊(cè) TMDPHP 模板引擎使用教程

TMDPHP 模板引擎使用教程

Jun 13, 2016 pm 12:01 PM
php smarty verwenden existieren Motor nehmen Tutorial Vorlage von wollen Das

在PHP界談模板引擎,必不可免的要拿Smarty開刀,
這個(gè)無比傻帽的卻又帶有一點(diǎn)點(diǎn)官方色彩的模板引擎,
如果沒有我這樣人富有正義感又富有創(chuàng)新精神的熱血青年站出來,
不知道它還要繼續(xù)毒害多少那些處于花季而又對(duì)PHP充滿美麗幻想的少年。
1.語(yǔ)法
你真的認(rèn)為美工學(xué)的了 {foreach key=key item=item from=$contact} 這樣的語(yǔ)法
卻學(xué)不了 $item) { ?> 嗎?
而 {if $name eq "Fred" or $name eq "Wilma"}
又比 優(yōu)秀到哪里去?
首先我對(duì)美工會(huì)學(xué)Smarty語(yǔ)法始終保持懷疑態(tài)度,至少我工作這么多年還沒遇到過一個(gè)會(huì)Smarty語(yǔ)法的,
而就算美工愿意學(xué),你又為何不教他正宗的PHP語(yǔ)法,卻要教他一門連你自己搞不清楚的“Smarty語(yǔ)言”
2.可視化
當(dāng)頁(yè)面從美工交接到你手上,然后你給那些完美的網(wǎng)頁(yè),套上那惡心的Smarty代碼,
然后在Dreamweaver里,你是否認(rèn)真的看過那些頁(yè)面已經(jīng)變得何等的丑陋,
圖片還看得見嗎?CSS還在嗎?更不用說include了。而要修改的時(shí)候呢?你還能一眼認(rèn)出來嗎?
這些都解決不了,那些所謂的模板引擎又怎么配得上“強(qiáng)大”二字?
3....
多的我就不說了,這里只是拿Smarty舉個(gè)例子,應(yīng)該不難發(fā)現(xiàn),其它模板引擎也大同小異,
都忙著發(fā)明自己的模板語(yǔ)言,而真正需要解決的問題則避而不談,
現(xiàn)在你是否明白了,所謂的模板引擎,所謂的強(qiáng)大,都TMD騙子,
在夜深人靜的夜里,我曾無數(shù)次的醒來,感覺自己的擔(dān)子又重了一些,只因?yàn)椴荒軌驅(qū)⑦@個(gè)殘忍的事實(shí)告訴你。
于是我痛心疾首,痛下狠心,百忙之中抽空寫了這個(gè)命名為tmd_tpl的真正的模板引擎,
雖然也許現(xiàn)在還不算強(qiáng)大,但強(qiáng)大是未來的一種必然。
·tmd_tpl使用入門教程:
接下來我們來學(xué)習(xí)tmd_tpl的使用方法,流程上和其它模板引擎沒什么太大的差別。
一、初始化模板引擎

復(fù)制代碼 代碼如下:


// 將 tmd_tpl 包含進(jìn)來
require '../tmdphp/tmd_tpl.php'; // 請(qǐng)改為你的tmd_tpl所在路徑
// 實(shí)例化 tmd_tpl
$TPL = new tmd_tpl();
// 下面是配置 tmd_tpl
// 指定模板目錄,以斜杠結(jié)尾
$TPL->tpl_dir = './tpl/';
// 指定模板文件擴(kuò)展名
// 建議以php為后綴,因?yàn)檫@樣在Dreamweaver中php代碼有高亮效果。
// 另外在Chrome瀏覽器中可以直接打開進(jìn)行預(yù)覽,用IE打開會(huì)提示下載。
$TPL->tpl_ext = '.tpl.php';
// 指定編譯后模板的保存目錄
$TPL->cache_dir = './tpl_c/';
// 設(shè)置編譯后文件的有效期,單位:秒
$TPL->cache_time = 0; // 0是每次都重新編譯,-1是永不過期,
// 自定義正則替換
$TPL->my_rep = array(
'~(\.\./)+static/~' => '/proj-1/static/',
// ↑如果項(xiàng)目的訪問地址是 http://localhost/proj-1/
// 自定義替換這里有很多技巧,入門期先不寫出來
);


二、賦值并顯示頁(yè)面

復(fù)制代碼 代碼如下:


// 普通賦值
$TPL->assign('site_name', '王道中強(qiáng)流');
$TPL->assign('site_intro', '我是一個(gè)PHP程序員,tmd_tpl的作者。');
// 支持?jǐn)?shù)組
$blog = array(
'title' => '去TMD的Smarty',
'content' => '在講解tmd_tpl的使用方法之前,我要先講講為什么要重新發(fā)明這個(gè)輪子。
那我們要從這世界上所謂的PHP模板引擎都為大家做了哪些貢獻(xiàn)說起。
在PHP界談模板引擎,必不可免的要拿Smarty開刀,
這個(gè)無比傻帽的卻又帶有一點(diǎn)點(diǎn)官方色彩的模板引擎,
如果沒有我這樣人富有正義感又富有創(chuàng)新精神的熱血青年站出來,
不知道它還要繼續(xù)毒害多少那些處于花季而又對(duì)PHP充滿美麗幻想的少年。',
// 目前只支持到二維數(shù)組,一般來說二維已經(jīng)足夠了
'info' => array(
'addtime' => '2012.3.11',
'author' => '王忠強(qiáng)',
'weibo' => 'http://t.qq.com/teeband',
),
);
$TPL->assign('blog', $blog);
// 模板中將演示循環(huán)輸出這個(gè)數(shù)組
$links = array(
'腳本之家' => 'http://www.jb51.net',
'素材天下' => 'http://sc.jb51.net/',
'百度' => 'http://www.baidu.com/',
'網(wǎng)址導(dǎo)航' => 'http://www.hao123.com',
'傷不起' => 'http://www.3buqi.com/',
'嘿!' => 'http://www.hei123.net/',
);
$TPL->assign('links', $links);
$TPL->display('index');


三、模板靜態(tài)文件的目錄結(jié)構(gòu)


四、模板篇

復(fù)制代碼 代碼如下:


// 模板中調(diào)用變量


// 調(diào)用數(shù)組

{$blog.title}


// 二維數(shù)組
{$blog.info.author}
// 這些模板引擎的基本功能,在tmd_tpl中也是一樣的。
// 但是循環(huán)和判斷,tmd_tpl觀點(diǎn)是直接用php代碼。沒必要?jiǎng)?chuàng)造個(gè)模板語(yǔ)言來實(shí)現(xiàn)。
foreach ($links as $name => $url) {
?>
  • {$name}

  • }
    ?>
    // 函數(shù)方面,對(duì)目前的tmd_tpl來說,是一個(gè)弱項(xiàng)。
    // 還不支持 {$blog.content|nl2br} 這樣子的格式。
    {:nl2br( $blog['content'] )} // 只能這樣
    =nl2br( $blog['content'] )?> // 或者這樣
    // 都將自動(dòng)轉(zhuǎn)換為

    // 如果調(diào)用的是一些無返回值的函數(shù)
    {~print_r( $blog )}

    tmd_tpl真正的創(chuàng)新之處在于,路徑的轉(zhuǎn)換。
    你可以在Dreamweaver中直接插入圖片,引入CSS,調(diào)用JS,還有包含另一個(gè)頁(yè)面。

    復(fù)制代碼 代碼如下:


    // 插入圖片

    // 引入CSS

    // 調(diào)用JS

    // 包含一個(gè)頁(yè)面


    ·使用tmd_tpl模板引擎之后

    查看通過http訪問效果 >點(diǎn)這里

    在Dreamweaver中(這樣子前端人員才有辦法嘛~)

    ?

    在Chrome中(只有include的頁(yè)面不能顯示)

    ?

    ·不用tmd_tpl的話,我們來看看Discuz!和DedeCMS的模板。

    Discuz!

    ?

    DedeCms

    ?

    現(xiàn)在你知道那些所謂強(qiáng)大的模板引擎有多可笑了吧?

    還等什么?改變歷史的時(shí)刻到了,點(diǎn)擊你手中的鼠標(biāo),下載第二代PHP模板引擎tmd_tpl!

    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

    Undress AI Tool

    Undress AI Tool

    Ausziehbilder kostenlos

    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.

    Clothoff.io

    Clothoff.io

    KI-Kleiderentferner

    Video Face Swap

    Video Face Swap

    Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

    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)

    Wie bekomme ich die aktuelle Sitzungs -ID in PHP? Wie bekomme ich die aktuelle Sitzungs -ID in PHP? Jul 13, 2025 am 03:02 AM

    Die Methode, um die aktuelle Sitzungs -ID in PHP abzurufen, besteht darin, die Funktion seision_id () zu verwenden. Sie müssen jedoch Session_start () aufrufen, um sie erfolgreich zu erhalten. 1. CALL Session_Start (), um die Sitzung zu starten; 2. Verwenden Sie Session_id (), um die Sitzungs -ID zu lesen und eine Zeichenfolge auszugeben, die wie ABC123DEF456GHI789 ?hnelt; 3. Wenn die Rückgabe leer ist, prüfen Sie, ob Session_Start () fehlt, ob der Benutzer zum ersten Mal zugreift oder ob die Sitzung zerst?rt wird. V. Stellen Sie sicher, dass die Sitzung korrekt aktiviert ist und die ID erfolgreich erhalten werden kann.

    PHP erhalten Substring von einer Zeichenfolge PHP erhalten Substring von einer Zeichenfolge Jul 13, 2025 am 02:59 AM

    Um Substrings aus PHP -Zeichenfolgen zu extrahieren, k?nnen Sie die Substr () -Funktion verwenden, die Syntax -Substr (String $ String, int $ start, int $ l?nge = null) ist, und wenn die L?nge nicht angegeben ist, wird sie am Ende abgefangen. Bei der Verarbeitung von Multi-Byte-Zeichen wie Chinesisch sollten Sie die Funktion mb_substr () verwenden, um verstümmelte Code zu vermeiden. Wenn Sie die Zeichenfolge nach einem bestimmten Trennzeichen abfangen müssen, k?nnen Sie exploit () oder substr () zum Implementieren verwenden, z. B. das Extrahieren von Dateinamenverl?ngerungen oder Dom?nennamen.

    Verwenden Sie STD :: Chrono in C. Verwenden Sie STD :: Chrono in C. Jul 15, 2025 am 01:30 AM

    STD :: CHRONO wird in C verwendet, um die Zeit zu verarbeiten, einschlie?lich des Erhaltens der aktuellen Zeit, der Messung der Ausführungszeit, der Betriebszeit und -dauer und der Formatierungsanalysezeit. 1. Verwenden Sie std :: chrono :: system_clock :: Now (), um die aktuelle Zeit zu erhalten, die in eine lesbare Zeichenfolge konvertiert werden kann, aber die Systemuhr ist jedoch m?glicherweise nicht eint?nig. 2. Verwenden Sie STD :: Chrono :: Steady_clock, um die Ausführungszeit zu messen, um die Monotonie zu gew?hrleisten, und umwandeln Sie sie durch Duration_cast in Millisekunden, Sekunden und andere Einheiten; 3. Zeitpunkt (Time_Point) und Dauer (Dauer) k?nnen interoperabel sein, aber die Aufmerksamkeit der Einheitenkompatibilit?t und der Uhr -Epoche (Epoche) sollte beachtet werden.

    Wie k?nnen PHP -Umgebungsvariablen um Umgebungsvariablen umgehen? Wie k?nnen PHP -Umgebungsvariablen um Umgebungsvariablen umgehen? Jul 14, 2025 am 03:01 AM

    ToaccessesvironmentvariableSinphp, useGetEnv () orthe _envSuperglobal.1.getenv ('var_name') ruftaspecificVariable.2. $ _ EN V ['var_name'] AccessesVariablesifvariables_OrderInphp.iniincludes "e" .setvariablesviacliwithvar = ValuePhpScript.php, Inapach

    Warum wir kommentieren: Ein PHP -Leitfaden Warum wir kommentieren: Ein PHP -Leitfaden Jul 15, 2025 am 02:48 AM

    PhphastheeCompentStyles:/

    PHP -Header -Umleitung funktioniert nicht PHP -Header -Umleitung funktioniert nicht Jul 14, 2025 am 01:59 AM

    Gründe und L?sungen für den Sprungversagen der Header-Funktion: 1. Vor dem Header gibt es Ausgabe, und alle Vorg?nger müssen überprüft und entfernt werden oder obs_start () Puffer wird verwendet. 2. Das Vers?umnis, Exit hinzuzufügen, führt zu einer nachfolgenden Code -Interferenz, und das Beenden oder die Sterbe sollte unmittelbar nach dem Sprung hinzugefügt werden. 3. Der Pfadfehler sollte verwendet werden, um die Korrektheit durch die Verwendung absoluter Pfade oder dynamisches Splei?en zu gew?hrleisten. 4. Serverkonfiguration oder Cache -Interferenz kann versucht werden, den Cache zu l?schen oder den Umgebungstest zu ersetzen.

    PHP -vorbereitete Erkl?rung erhalten Sie Ergebnis PHP -vorbereitete Erkl?rung erhalten Sie Ergebnis Jul 14, 2025 am 02:12 AM

    Die Methode zur Verwendung von Vorverarbeitungsanweisungen, um die Datenbankabfrage zu erhalten, führt zu PHP von der Erweiterung. 1. Bei der Verwendung von MySQLI k?nnen Sie das assoziative Array über Get_Result () und fetch_assoc () erhalten, was für moderne Umgebungen geeignet ist. 2. Sie k?nnen auch Bind_result () verwenden, um Variablen zu binden, was für Situationen geeignet ist, in denen es nur wenige Felder und feste Strukturen gibt, und es ist eine gute Kompatibilit?t, aber es gibt viele Felder, wenn es viele Felder gibt. 3. Bei Verwendung von PDO k?nnen Sie das assoziative Array über Fetch (pdo :: fetch_assoc) erhalten oder Fetchall () gleichzeitig erhalten, damit die Schnittstelle einheitlich ist und die Fehlerbehandlung klarer ist. Darüber hinaus müssen Sie auf die Parametertyp -übereinstimmung, die Ausführung von Execute (), die rechtzeitige Ver?ffentlichung von Ressourcen und die Aktivierung von Fehlerberichten achten.

    PHP -überprüfen Sie, ob eine Zeichenfolge mit einer bestimmten Zeichenfolge beginnt PHP -überprüfen Sie, ob eine Zeichenfolge mit einer bestimmten Zeichenfolge beginnt Jul 14, 2025 am 02:44 AM

    In PHP k?nnen Sie eine Vielzahl von Methoden verwenden, um festzustellen, ob eine Zeichenfolge mit einer bestimmten Zeichenfolge beginnt: 1. Verwenden Sie Strncmp (), um die ersten N -Zeichen zu vergleichen. Wenn 0 zurückgegeben wird, passt der Anfang überein und sind nicht sensibel; 2. Verwenden Sie Strpos (), um zu prüfen, ob die Substringposition 0 ist, was für Fall empfindlich ist. Stripos () kann stattdessen verwendet werden, um Fall unempfindlich zu erreichen; 3.. Sie k?nnen die Funktion startsWith () oder str_starts_with () zusammenschlie?en, um die Wiederverwendbarkeit zu verbessern. Darüber hinaus ist zu beachten, dass leere Zeichenfolgen standardm??ig true, codierende Kompatibilit?ts- und Leistungsunterschiede, sTRNCMP () in der Regel effizienter.

    See all articles