除了第一份工作是用ASP語言寫網頁程式以外,之後在職涯中逐漸走向後端/大數據領域。所以即便在電子商務公司工作,自己也是少數不懂PHP程式語言的工程師。但2021年,什麼事都可能發生,由於同事調任要職務交接,得接手他的PHP+CI程式。剛好趁著看不到盡頭的WFH,來瞭解一下PHP和CodeIgniter框架。
市面上中文的CI專書很少,買得到的大概也只有這本「PHP網站開發」,話雖如此,但這書的內容真的不差。從網頁開發最基礎的HTML教起,接著是JavaScript和SQL,篇幅是點到為止,但按步就班的學習下來也能獲得必要的相關知識。後面的重頭戲包括PHP語法、函式與資料庫操作,當然對已經熟悉其它程式語言的讀者來說,這些觀念很容易理解,差別是語法的熟練度。如果是初學者,書中節章的安排和練習用的範例,是恰到好處,不疾不徐地讀者逐漸習慣PHP。
第四章的CI框架介紹,是本書的精華,也確實讓人覺得物有所值。第一眼看到同事交接來的PHP+CI程式碼,真的是霧裡看花,弄不清Request的URL是被轉到專案中的那支PHP程式。畢竟MVC(Model-View-Controller)雖然是跨語言/平台的網站設計架構,但不同的框架(Framework)實踐的方法卻是截然不同。這本「PHP網站開發」確實把CI架構說明得一清二楚,讓我讀完後就具備看懂PHP+CI程式的技能。
當然本書只介紹最基本的CI觀念,未來遇到進階的技術問題,還是得去看CI官網文件。如果說「PHP網站開發」有什麼缺點,大概是範例程式裡的MVC切分做法有點奇怪。作者讓Model直接讀取網頁的input,而不是用函式參數傳遞的方法讓Controller把input傳給Model,這不是標準的MVC呀。
