php的框架众多,笔者用过的包括thinkphp,CI,smarty,laravel,也用过一些公司自己开发的框架。
thinkphp是国人自己开发的,我大概用过一段时间,基本功能都还好,应该也还比较好用,我没有做深入的研究。
smarty是我刚学php的时候就采用的一款框架,他小巧灵活,提供基本的逻辑和页面分离,也带有缓存功能,是一款小巧的框架,我觉得对于开发静态页面比较多的小型网站是比较适用的,对于后台逻辑较复杂的网站还是显得有些力不从心。
laravel是最近非常火的一个框架,他里面大量运用了面向对象的思想,以及独特的包管理机制,以及命令行操作方法,都把php推向了新的高度。作者力图使得php也能像java一样做到逻辑清晰,便于维护。它的缺点是过于庞大,所附带类库和文件太多,影响加载速度。不过也是值得好好研究的一款框架。
CodeIgniter(简称CI)则是一款非常适合web开发的php框架。首先他也有比较丰富的类库,可以避免开发者重复造轮子;再有他是典型的MVC结构框架,使得程序逻辑清晰;还有他没有laravel那么庞大,配置也不复杂,非常容易上手。对于一般的网站,它是非常适用的。
鉴于笔者用CI比较多,也就想系统的学习一下CI框架的原理和设计思想,在此记录下来分享。