aspx有了vs系列,可以实现界面可视化编程 。jsp有了ssh框架,只要遵循其中的规范,就可以写出扩展性较好的代码。那么,php有什么,经过一番研究,终于发现php的开源架构zend framework。
zend framework好到了甚至有一款专门的ide来支持它的开发。各位不妨打开360软件管家,找到设计必备栏目,然后找一款名为zend的软件,看看官方对它的评价,你差不多就了解了。闲话少说,进入正题。
zend framework是一款完全利用了php支持面向对象的特性,基于mvc的框架。里面不仅含有框架,而且还有很多的工具,比如操作pdf文件的类等(要不怎么可能有20多M)
下面开始建立第一个zend工程。
1.打开zend framework集成开发环境,新建Zend FrameWork Project(zend ide是基于eclipse的,具体怎样建,看一下eclipse的书即可)
2.打开新建的工程下的application包,嘿嘿,熟悉吧,Models,Views,Controllers,典型的mvc必备包名。先不管它们,而要打开在同一文件夹下的config文件夹,打开application.ini文件。(为什么不用xml文件,而要用配置文件)
3.在application.ini文件里包含了大部分的基本配置(当然,配置文件仅仅是配置文件,如果您觉得它的名字不顺眼,完全可以在public包下的index.php或者直接调用
Zend_Config_Ini类即可)
4.在这个配置文件里,我们可以加上数据库连接字符串,不要过分纠结配置文件中的诸如resource.db.name;之类的名字,既然zend是开源的,我们不妨打开它的源文件,找到zend_db.php文件,可以看到它的factory函数是如下定义的
public static function factory($adapter, $config = array())
所以,只要传递的参数满座它的条件,您甚至不需要在配置文件中写,而是直接新建一个array都行,这就是开源的好处
5.下面看一下public包下的index.php文件,在这个文件里,主要的任务不是显示首页的内容,而是需要设置视图等一些东西。在这里,
Zend_Registry类就派上了大用场,它是单例模式的,在整个网站会话的生命周期一直存在,它里面保存了一个数组(其实用起来像一个map),是保存说有的controller和view的,用的时候直接通过它们的名字即可,是很方便的;
6.要用PDO_SQL,需要在php.ini文件里开启pdo扩展。
7.在zend中,用于显示的文件扩展名为.phtml,而且往往是通过view的render方法来显示。
8.在每个action里面都包含一个view的属性
9。关于zend framework中view和controller的对应关系是这样的,xxxController对应于views包下的xxx目录,xxxController下的yyyAction对应于xxx目录下的yyy.phtml.
10.关于render,当用$this->view->xxx..修改时,不需要render,关于render的详细介绍,可以参看下面这个网址
http://www.jaceju.net/blog/archives/1628