您好,登錄后才能下訂單哦!
php中Symfony有什么特點?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
Symfony是一組可復用的 PHP組件,它還是一個用于web項目的 PHP框架。簡單的模板功能symfony是一個開源的PHP Web框架。基于最佳Web開發實踐,已經有多個網站完全采用此框架開發,symfony的目的是加速Web應用的創建與維護。
Symfony特點有:
主要是提高了代碼的抽象級別。相對于簡單的,直接暴露底層概念的 PHP 語言,Symfony 提供了一套解決特定工程問題的概念和工具,幫助廣大的 Coder 的減少重復性工作。抽象化意味著能用更簡潔的東西表達復雜的概念,流程等。
Symfony的一些介紹:
1、路由:能限制 hostname,這就讓有大量公共功能的網站可以共用一套代碼;URI 識別支持 Reg 檢測,讓 url 能定義的隨心所欲;支持前綴,import,便于模塊化。
2、Twig模板:這是我最喜歡的一個組件。它提供了一套不同于 php,但非常適合處理復雜網站結構,頁面結構的語法。extension 很方便也很強大,通用的操作通過 extension 能很好的表達,比如需要緩存頁面的某個模塊到 redis ,寫一個 ViewExtension,就能在模板里面用一個方法來緩存特定模塊了,非常方便,代碼也很容易管理。
3、composer包管理:讓代碼的依賴關系變得很清晰。而且現在第三方有很多不錯的 bundle,比如抽象 redis 的 snc/redis-bundle,處理圖片的 liip/imagine-bundle,第三方登錄的 hwi/oauth-bundle 等等等等。隨著自己項目的逐漸成熟,也可以把項目對 Symfony 的定制獨立出來用 composer 來管理,感覺挺不錯的。
4、Event,Listener 和 Services:非常方便的全局功能處理。惹人討厭的是配置起來很麻煩,我用的是 yml 配置文件,為了找對路的語法真是掉了一層皮。
5、Doctrine ORM:一個好處是不用去糾結于數據庫的細節,而只需仔細的設計需要持久化的對象。對象之間的關系可以自由設計,從生成數據庫結構到生成查詢語句的過程都不用再操心了。另一個好處是查詢的時候,可以不用 sql,dql 這種依賴字符串來表達的查詢,而采用對象式,sql 因為是單純的字符串,整個查詢邏輯的控制用代碼表達起來很麻煩。
6、Form組件:Symfony 提供了 form 生成,提dao交以及驗證的功能。組件抽象了三個方面的東西:formType 來維護需要填寫保存的值,formTheme 來定義表單的 html 結構,以及 validation 提供數據驗證的功能。這個組件的缺點也很明顯,概念太復雜了,如果遇到要自己定義一個 field,簡直就是自找麻煩。
7、性能:Symfony 提供了一個極好的組件叫 profile,能以圖形化的形式顯示各個部分代碼執行的時間,消耗的內存,還有數據庫查詢的語句,查詢的行數,用到的索引的。配合這個工具來優化代碼,可以讓網站跑得飛快。
關于php中Symfony有什么特點問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。