跳到主要內容

發表文章

目前顯示的是 9月, 2021的文章

CodeIgniter4 - PHP 程式開發框架

 因為最近比較常寫 PHP 程式,老是用舊方法開發已經有點發現 CP 值不高,想找些開發框架,也就是 MVC 框架來快速開發。 PHP 的 MVC 框架很多,相關資訊可以參考: php常用的7大框架 研究過 laraval、ThinkPHP、CodeIgniter等框架,最後選擇 CodeIgnite 4 (CI 4)來作為自己程式開發框架。 主要是因為自己已習慣使用 Smarty 作為網頁模版引擎,有找到在 CI4 中使用 Smarty Engine 的範例,其他的框架不是沒有相關範例,就有其自帶的模版引擎需要再學一遍。 所謂 MVC 架構:M 表 Model,就是專門處理資料庫相關的動作;V 表 View,處理網頁渲染,也就是慣用的 Smarty;C 表 Controller,處理所有程式動作。在 Controller 前面還有一個 Router 的角色,負責解析網址或輸入參數(一般為 GET),並發送到相對應的 Controller 或 觸發相對應的 Controller 去作處理。 以前自己寫的程式已經有一些些 MVC 的影子了,利用網址呼叫一支支 PHP 程式,裡面用 action 或 func 變數來執行對應的 function 程序,最後用 Smarty 作網頁渲染。所以轉換成 MVC 框架比較無痛,而且 MVC 框架多一個專門處理資料庫的 Model,節省了許多寫 SQL 語法的時間。 CodeIgnite 4 CodeIgnite 台灣: https://codeigniter.tw/ 利用 composer 新增專案:composer create-project codeigniter4/appstarter <project-name> 以 php cli 建立 model, controller 等:php spark make:[controller | model] 建立好專案後,CI 4 會在專案資料夾中建新必要的資料  app 資料夾中就是所有程式的核心,Router, Controller, Model, Views 和必要的設定檔都在其中。 public 資料夾是專案網頁的 root,所以要在 apache 等網頁伺服器設定將網頁路徑指到那邊。 writable 資料夾有關 logs, session 等系統儲存的資