一.什麼是Symfony
特性: 嚴謹,複雜,靈動的PHP架構
版本差別:
- 1.x 05-12(停止維護)
- 2.x至今
- 遵循PSR-0自動載入
- 遵循比較新的web開發最佳實踐
- 啟用composer第三方包管理工具
- LTS與非LTS
- LTS:版本 維護周期比普通版長,适用:企業開發 , 大型項目開發
- 非LTS版本:維護周期短(半年及以上),适用:研究項目,個人學習
- 為什麼使用它盡行開發
- 快速開發健壯,可持續更新
- 初期-快速上線
- 中期,需求變化,功能優化
- 後期不改動代碼的基礎上進行優化
- 使開發過程更加關注業務邏輯
- 資料庫的設計
- 表單驗證
- 通過使用更加深入了解冰應用網站開發領域中的最佳實踐
- 管理css和js
- 戰略部署
- 管理模闆
- 服務的統一管理
- 快速開發健壯,可持續更新
- 優勢
- 開放性(開源)
- 可擴充性(單元模組的集合,composer管理安裝)
- 持續更新性(有商業背景和支援性)
- 被廣泛使用性(引領PHP領域最佳實踐性)
- 性能(速度)
- 影響網站的速度有哪些
- 靜态化
- 緩存
- 資料操作合并處理
- symfony優勢
- 通過Annotation注釋做業面緩存
- Annotation可以通過不改變任何程式代碼
- 可以對Action進行緩存或通過配置
- 影響網站的速度有哪些
- 如何使用symfony開發網站應用
- 第一步上線
- 初始化
- 環境設定
- 部署規則設定
- 第二步網站更新
- 資料處理
- 舊資料轉義
- 相容問題
- 第一步上線
- 資料來源
- symfony官網
- symfony官方IRC頻道
- Stackoverflow.com問答社群
- github.com/Symfony
- 環境搭建
- 使用php cli-server搭建簡易開發環境:适用于個人開發者
- 使用Vagrant搭建完整開發環境: 适用于需求複雜,運用較多第三方元件或者插件的項目,需要同時開發多個項目的情況下
- 搭建共享開發伺服器:适用于多人團隊
- 路由
- url–請求–程式方法=路由
- 配置路由
-
Annotation:
允許你在方法的上面用注釋功能定義方法運作狀态的功能
-
router.yml
常用的配置格式
- router.xml
- PHP
-
-
差別
Annotation路由定義和方法都在注釋裡,開發起來比較友善
- URL定義
-
靜态URL
保持url連接配接不變的情況
-
動态URL
url參數會改變例如分頁
-
- 什麼是服務
-
程式的架構方式
作用:把特定的事情的類或方法獨立于目前代碼單獨存在并通過Service進行調用
SOA:Service Oriented Architecture 面向服務架構
-