symfony框架Twig模板語言的使用

2021-08-21 12:26:40 字數 3059 閱讀 3752

php的twig模板語言:類似python的jinja2,語法什麼的都是類似python

母版:base.html.twig

自定義標題

title>

rel="stylesheet"

href="">

rel="stylesheet"

href="">

src="">

script>

src="">

script>

head>

class="row bg-primary">

class="col-sm-1 col-xs-1">

div>

class="col-sm-11 col-xs-11">

href=""

style="text-decoration: none;color: white;">mywebsitea>

h1>

div>

div>

body>

html>

list.html.twig

mywebsite

class="row jumbotron">

class="col-md-1 col-xs-1">

div>

class="col-md-10 col-xs-10">

welcome to mywebsite!h1>

div>

class="col-md-1 col-xs-1">

div>

div>

show.html.twig

部落格內容

class="row jumbotron">

class="col-md-1 col-xs-1">

div>

class="col-md-10 col-xs-10">

我的第一篇部落格h1>

div>

class="col-md-1 col-xs-1">

div>

div>

list.html.twig 和 show.html.twig 都繼承了 base.html.twig,擁有了相同的頁面布局

return

$this->render('blog/show.html.twig', array('title' => '部落格標題', 'content' => '部落格內容'));

修改show.html.twig中block body

class="row jumbotron">

class="col-md-1 col-xs-1">

div>

class="col-md-10 col-xs-10">

}h1>

div>

class="col-md-1 col-xs-1">

div>

div>

class="row">

class="col-md-1 col-xs-1">

div>

class="col-md-10 col-xs-10">

}h4>

div>

class="col-md-1 col-xs-1">

div>

div>

變數傳遞通過 } 這樣的符號來傳遞

傳遞型別

舉例讀取方式

變數array(『title』 => 『部落格標題』)

}array結構

array(『content』 => $content)

}類結構

array(『content』 => $content)

}php原生方法

去掉 html標籤方法

}

$content = array();

$content = array('category' => '類別1', 'text' => '內容1');

$content = array('category' => '類別2', 'text' => '內容2');

$content = array('category' => '類別1', 'text' => '內容3');

$content = array('category' => '類別2', 'text' => '內容4');

return

$this->render('blog/show.html.twig', array('title' => '部落格標題', 'content' => $content));

class="row">

class="col-md-1 col-xs-1">

div>

class="col-md-10 col-xs-10">

}h4>

div>

class="col-md-1 col-xs-1">

div>

div>

迴圈遍歷 :

邏輯判斷:

href='

}'>

}a>

blog_list為router.yml裡邊配置的路由名稱

關於twig的詳細使用可參考

twig, 靈活、快速、安全的php模板語言

教你成為全棧工程師(full stack developer) 九-讓模板檔案幫你快速開發網頁

symfony中twig的模板過濾器

變數可以被過濾器修飾。過濾器和變數用 分割開。過濾器也是可以有引數的。過濾器也可以被多重使用。date過濾器 1.1版本新增時區支援,1.5版本增加了預設的日期格式。格式化時間,這個過濾器和php的date函式無限類似,可處理與 strtotime 相容的字串,或 datetime dateinte...

twig模板引擎

twig是乙個靈活 高效並且安全的php模板引擎。如果你使用過smarty django或者jinja這類基於文字的模板引擎的話,那麼你會覺得twig是很自然而然的事情。twig嚴格遵守了php的信念,同時增加了在模板環境中很有用的函式,這些做法使得twig不論是對設計師還是開發人員,都是非常友好的...

MVC框架的封裝(十一)twig模板引擎

因為我們使用的也是乙個第三方類,需要composer來進行載入。所以我們需要修改composer.json這個檔案,在require中新增一行 twig twig 後邊的 說明我們對版本沒有限制。然後,在cmd中,輸入composer update,進行更新,完成以後,就需要我們去修改之前寫的基礎類...