PHP语言发展至今基本上可以说没有一个成熟的框架.不知大家听说过Ruby on rails没有,它是一个标准的MVC框架,因为对Ruby不熟,所以不说它了.
而Cake这个框架也可以称它为PHP on rails,也就是说Cake也是一个MVC的框架.Cake是怎样工作的呢?
-* 它有一个显著的特点就是 使用名称来绑定MVC之间的关系,包括数据库的结构,例如: 一个 post 表将要定义 post.php posts_helper.php posts_controller.php 这三个类和一个 post 目录来存放与此相关的模板文件.
-* Cake把传统的 模板加程序 非常清晰的分成了三个部分 modles、view和controller.
-- -* 首先它有一个 app_controller 类是用来存放全局用到的方法.
-- -* models集中体现在了数据库方面的操作:把常用的数据库的操作封装到一个 models 类里,它几乎封装了你所能想到的方法和逻辑.
-- -* controller主要是做输出与输入的,可以在这个类里做所有的页面逻辑和业务逻辑处理.我个人感觉它比较有意思,例如在 post_controller 里定义一个 articles_list 方法,你将从浏览器上通过 http://host.../posts/articles_list 这个地址来访问它的内容.
-- -* view 是比较简单的,因为它的 view 里可以直接写PHP程序,它是通过 controller 类里的方法名字来绑定的,比较舒服的是它在处理表单时让程序员比较省事,在 controller 里已经集成了一些对表单处理的逻辑,这里就不细说了.
-* 具体如何工作有个中文例子大家可以参考一下: https://trac.cakephp.org/wiki/Cake/Tutorials/BlogPosts/zh
------------------
Cake到目前为止还非常的不完善,在我们研究它的时候发现其很多BUG和有些功能它实现不了,比较有意思的是上次我们给他们提了一个关于多库操作的问题后不久他们马上给我们打了个补丁,而且告诉我们会在下一个版本中提供这个功能.
Cake目前没有相关的中文支持,它的官方网址是:https://trac.cakephp.org/ . 从网站上可以看到它们的进度,目前是 54%.
其实我觉得PHP难得有个像样的框架,所以正在做PHP开发的同志们如果对纯MVC感觉兴趣的话,那你一定也会对Cake感兴趣的.