作者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