Zend Framework单表CRUD入门示例

来源:互联网 发布:commvault备份软件 编辑:程序博客网 时间:2024/05/22 06:05

http://www.zendchina.net/?action-viewnews-itemid-694

Last Update 2009-9-10

一、环境

Windows 2003 Server

Apache/2.0.55

php-5.2.6

pecl-5.2.6

ZendFramework-1.9.2

MySQL 5.0.18-nt

 

二、基本配置

1.下载框架包 http://framework.zend.com/download

2.完成PHP的基本环境配置(不再叙述了)

3.PHP.ini配置文件修改

extension=php_pdo.dll

extension=php_pdo_mysql.dll

两项前的分号去除

4.Apache配置文件httpd.conf修改

LoadModule rewrite_module modules/mod_rewrite.so 开启

 

<Directory />

   Options FollowSymLinks

   AllowOverride All              设置为All

</Directory>

 

5.建立项目目录



 

 

 

6.建立数据库,建立表book

id int pk auto_increment

title varchar

description varchar

 

7.开始编码

(1).htaccess文件



 

RewriteEngine引擎启动,并把对除过js、ico、gif、jpg、png、css等图片、js脚本、css的请求,都发送到index.php文件中。

 

(2)启动文件

index.php



 

 

要配置前端路由器,这样它就知道从哪个目录里找出我们的控制器



  

 

(3)控制器

在ZF框架中控制器是一个必需被叫做{Controllername}Controller的类。

注意{Controller name}必需以大写字母开头。

并且,这个类必须在叫做{Controller name}Controller.php这样的文件中,这个文件还必需在特定的控制器目录中。如:controllers目录

 

{Controller name}必需以大写字母开头并且其它字母一定是小写

 

每个action是在控制器类里的public函数,名字必需是{action name}Action

在这里,{action name}应该以小写字母开头

 

/application/controllers/IndexController.php



 

 

可在地址栏输入地址进行测试:xx表示项目设置的虚拟目录(根路径)

http://localhost/xx/index    调用indexAction

http://localhost/xx/index/add 调用addAction

http://localhost/xx/index/edit 调用editAction

http://localhost/xx/index/edit 调用deleteAction

 

 

(4)设置视图  /application/views/scripts

视图将允许把显示页面的代码从action函数里分离出来。

将共同的代码提取

/application/views/scripts/header.phtml

/application/views/scripts/footer.phtml

 

header.phtml



  

 footer.phtml



 

 

修改IndexController添加一个新的函数叫做init(),它被Zend_Controller_Action的构造器自动地调用;确保视图能够在开始被初始化并且确信它已经准备好能被用在action函数中。

functioninit()

{

      $this->initView();

      

      //得到当前根路径

      $this->view->baseUrl =$this->_request->getBaseUrl();

}

在各个Action函数中,分别加入,以供View中调用获得

$this->view->title ="新增Book";

$this->view->title ="编辑Book";

$this->view->title ="删除Book";

 

编写

/application/views/scripts/index/index.phtml

/application/views/scripts/index/add.phtml

/application/views/scripts/index/edit.phtml

/application/views/scripts/index/_form.phtml (供add.phtml和edit.phtml来引用)

 

 

(5)连接数据库,完成最终功能

创建配置文件/application/config.ini

 

启动文件index.php中加入数据库连接代码



 

 

 建立模型/application/models/Book.php



 

 

Zend_Db_Table提供了所有我们需要的常用的数据库函数。

如果需要特殊的函数管理你的模型,就可以把它们放到这个类里。(其它的特殊业务)

 

 

控制器的各Action中编写处理代码,调用模型提供的相关函数来完成实际的操作。



 

 

 

  

 

在deleteAction中,注释掉的是其它文档上这样写的,本人觉得没必要这么复杂,所以稍微修改了一下代码。

 

(6)最终的表示层

index.phtml显示列表界面



 

 

_form.phtml 表单界面(由add和edit共用)



 

 

add.phtml



 

 

edit.phtml




原创粉丝点击