網(wǎng)友評(píng)分: 9.4分
Symfony是一款基于MVC模式的面向?qū)ο蟮腜HP5框架,它可以幫助你將web應(yīng)用程序的業(yè)務(wù)邏輯、服務(wù)器端邏輯和頁(yè)面顯示分開。它也包含了許多的工具和類,這些工具和類可以幫助你縮短開發(fā)復(fù)雜web應(yīng)用程序的時(shí)間。
路由
能限制hostname,這就讓有大量公共功能的網(wǎng)站可以共用一套代碼。URI 識(shí)別支持 Reg 檢測(cè),讓 url 能定義的隨心所欲。支持前綴,import,便于模塊化。
Twig模板
這是我最喜歡的一個(gè)組件。它提供了一套不同于 php,但非常適合處理復(fù)雜網(wǎng)站結(jié)構(gòu),頁(yè)面結(jié)構(gòu)的語(yǔ)法。extension 很方便也很強(qiáng)大,通用的操作通過(guò) extension 能很好的表達(dá),比如需要緩存頁(yè)面的某個(gè)模塊到 redis ,寫一個(gè) ViewExtension,就能在模板里面用一個(gè)方法來(lái)緩存特定模塊了,非常方便,代碼也很容易管理。
composer包管理
讓代碼的依賴關(guān)系變得很清晰。而且現(xiàn)在第三方有很多不錯(cuò)的 bundle,比如抽象 redis 的 snc/redis-bundle,處理圖片的 liip/imagine-bundle,第三方登錄的 hwi/oauth-bundle 等等等等。隨著自己項(xiàng)目的逐漸成熟,也可以把項(xiàng)目對(duì) Symfony 的定制獨(dú)立出來(lái)用 composer 來(lái)管理,感覺(jué)挺不錯(cuò)的。
Event、Listener和Services
非常方便的全局功能處理。惹人討厭的是配置起來(lái)很麻煩,我用的是 yml 配置文件,為了找對(duì)路的語(yǔ)法真是掉了一層皮。
Doctrine ORM
一個(gè)好處是不用去糾結(jié)于數(shù)據(jù)庫(kù)的細(xì)節(jié),而只需仔細(xì)的設(shè)計(jì)需要持久化的對(duì)象。對(duì)象之間的關(guān)系可以自由設(shè)計(jì),從生成數(shù)據(jù)庫(kù)結(jié)構(gòu)到生成查詢語(yǔ)句的過(guò)程都不用再操心了。另一個(gè)好處是查詢的時(shí)候,可以不用 sql,dql 這種依賴字符串來(lái)表達(dá)的查詢,而采用對(duì)象式,sql 因?yàn)槭菃渭兊淖址?,整個(gè)查詢邏輯的控制用代碼表達(dá)起來(lái)很麻煩。
Form組件
Symfony 提供了 form 生成,提交以及驗(yàn)證的功能。組件抽象了三個(gè)方面的東西:formType 來(lái)維護(hù)需要填寫保存的值,formTheme 來(lái)定義表單的 html 結(jié)構(gòu),以及 validation 提供數(shù)據(jù)驗(yàn)證的功能。這個(gè)組件的缺點(diǎn)也很明顯,概念太復(fù)雜了,如果遇到要自己定義一個(gè) field,簡(jiǎn)直就是自找麻煩。
性能
Symfony 提供了一個(gè)極好的組件叫 profile,能以圖形化的形式顯示各個(gè)部分代碼執(zhí)行的時(shí)間,消耗的內(nèi)存,還有數(shù)據(jù)庫(kù)查詢的語(yǔ)句,查詢的行數(shù),用到的索引的。配合這個(gè)工具來(lái)優(yōu)化代碼,可以讓網(wǎng)站跑得飛快。
1.Linux/Mac OS
在控制臺(tái)執(zhí)行如下命令:
$ sudo curl -LsS http://symfony.com/installer -o /usr/local/bin/symfony
$ sudo chmod a+x /usr/local/bin/symfony
將會(huì)在你的操作系統(tǒng)創(chuàng)建一個(gè)全局命令symfony
2.Windows
在控制臺(tái)執(zhí)行如下命令:
c:\> php -r "readfile('http://symfony.com/installer');" > symfony
將下載下來(lái)的symfony文件移到你的項(xiàng)目目錄,然后執(zhí)行以下命令:
c:\> move symfony c:\projects
c:\projects\> php symfony
3.創(chuàng)建一個(gè)symfony應(yīng)用
使用new命令創(chuàng)建第一個(gè)symfony應(yīng)用
# Linux, Mac OS X
$ symfony new my_project_name
# Windows
c:\> cd projects/
c:\projects\> php symfony new my_project_name
標(biāo)簽: Symfony PHP代碼 編程框架 網(wǎng)頁(yè)前端開發(fā)
Taro(開放式跨端跨框架) V3.0.28 官方版 2.66M | 簡(jiǎn)體中文 | 8
詳情Django(Python Web框架) V3.1.6 官方版 12.23M | 英文 | 8
詳情84PHP框架 V5.0.0 官方版 70K | 英文 | 8
詳情imi(應(yīng)用開發(fā)框架) V1.2.20 官方版 611K | 簡(jiǎn)體中文 | 8
詳情迅睿CMS免費(fèi)開源系統(tǒng) V4.7.8 官方版 9.75M | 簡(jiǎn)體中文 | 8
詳情Kratos框架(Go微服務(wù)框架) V2.0.0beta3 官方版 313K | 簡(jiǎn)體中文 | 8
詳情微信web開發(fā)者工具 x64 V1.05.2204180 官方版 100.6M | 簡(jiǎn)體中文 | 8.3
詳情微信web開發(fā)者工具 V1.05.2204180 官方版 100.74M | 簡(jiǎn)體中文 | 5.5
詳情WebStorm(Web可視化開發(fā)軟件) V2021.1 中文免費(fèi)版 150.15M | 英文 | 9
詳情Symfony(PHP框架) V4.0.8 官方版 3.8M | 簡(jiǎn)體中文 | 10
詳情Pinegrow4(Web前端開發(fā)編輯器) V4.91 官方版 102.32M | 英文 | 8
詳情WebStorm2019.3 官方免費(fèi)版 210.39M | 簡(jiǎn)體中文 | 6
詳情關(guān)于本站|下載幫助|下載聲明|軟件發(fā)布|聯(lián)系我們
Copyright ? 2005-2024 hanheng168.com.All rights reserved.
浙ICP備2024132706號(hào)-1 浙公網(wǎng)安備33038102330474號(hào)