作者appleboy46 (小惡魔)
看板PHP
標題[心得] CodeIgniter 2.0 的發展以及特性改變
時間Sun Oct 3 16:55:36 2010
論壇: http://ci.wuboy.twbbs.org/forum/viewtopic.php?f=6&t=2714
部落格: http://blog.wu-boy.com/2010/10/03/2402/
在今年3月11日 EllisLab 發布了一則新訊息,信件內容大致上提到,他們將會改變程式的
版本控制軟體,由原本的 Subversion 轉換到 Mercurial,CodeIgniter 也選擇了網路知名
版本控制 BitBucket 網站來存放 CI 的程式碼,CI 團隊目前致力於 CodeIgniter 2.0
開發,如果要取得程式碼,可以透過這裡,利用底下指令來取得:
hg clone http://bitbucket.org/ellislab/codeigniter
這次我們來看看 CodeIgniter 2.0 跟 1.7.2 的版本差異性,雖然說這些不是官方公告的,
可是也是改變蠻多的,也許有哪些沒有列到的,之後再慢慢補:
1. PHP4 正式掰掰
我想使用 CI 最方便的地方,就是支援 PHP5 & PHP4,方便使用者轉換網站到 CI 上面,現
在 CI 2.0 之後將完全不支援 PHP4,一些舊有的函式會在 2.1 之後也不支援 PHP4 了,我
想這樣整個 CI 的架構會縮小許多,PHP4 也太多漏洞了,這樣跟 Kohana PHP Framwork(原
本從 CI branch 出來的) 一樣只會支援 PHP5 了,效能應該可以增加不少
2. Scaffolding 正式移除
Scaffolding 對於沒有後台管理的網站,臨時可以修改新增或者是刪除資料庫,不過相當危
險,所以 CI 正式移除它,可以看一下中文文件。
3. 重新命名核心資料夾
將 system/codeigniter/ 名稱變成 system/core/,核心程式 Router, Loader, Output 等
,都可以用 application/core 之中去替換(參考)
4. system/plugins/ 正式走入歷史
其實本來就沒有必要有這資料夾,這跟 library 有衝突性的,應該說很類似差不多,我真
的不知道為什麼會有此資料夾
5. 正式支援 jQuery
CI 開始支援 jQuery,檔案 (system/libraries/javascript/Jquery.php) 這跟 database
library 差不多 ,之後陸續更多 javascript 支援
6. 新增 Drivers Library 功能
這功能在 Kohana 這套 Framework 已經實做出來,這對於 CI 是一個新的 Library,他能
擁有一個父類(parent class),可以很多子類(child classes),最好的範例就是
JavaScript library,他是一個 parent class,而 jQuery Driver 是 child class,還
有其他例子,例如 Cache class 它底下就會有 Memcache, APC 等諸如此類的 Driver。
7. 新增 /third_party/ 資料夾
在 application 裡面會多出 third_party 資料夾,它會提供最基本的一些資料夾,包含
libraries, models, helpers, 等,架構如下
/system/application/third_party/foo_bar
config/
helpers/
language/
libraries/
models/
8. Cookie helper 改變
將 system/helpers/cookie_helper.php 拉出來整合到 Input Class。
--
http://mimi.twgg.org/ 每日 MLB 精彩好球
--
1F:推 allen501pc:好文,推一個! 10/03 18:15
2F:推 popmentos:感謝推 10/03 19:03
3F:推 evernever:等不及了! 10/03 21:11
4F:→ superpai:等好久...orz 10/03 21:48
5F:推 BloodyDawn:分享推:D 10/03 21:53
6F:推 liaosankai:CI2耶,感覺似乎不錯,看來轉KO3的人又要動搖了>"< 10/03 22:42
※ 編輯: appleboy46 來自: 74.207.249.141 (10/03 23:16)
7F:推 marcoyan:推啊!!CI讚啦! 10/05 11:59
8F:→ ileadu:? kohana 不是有做了for php5 的.. 10/06 20:54
9F:推 JeffMcBride:CI2推一下! 希望補上5的部分:p 10/07 22:48
10F:→ liaosankai:@ileadu KO2一開始就for PHP5,不過KO2和KO3差很多 10/08 16:38
11F:→ liaosankai:KO2和CI1.x比較相近,KO3整個資料夾結構變很大>"< 10/08 16:39
12F:→ liaosankai:個人經驗CakePHP->CI1.x->Ko2->Ko3-->"CI2?" 10/08 16:41