ZendChina | Zend中文权威资讯's Archiver

ZendChina 发表于 2007-12-29 21:54

Zend Framework 构建样例应用程序

ZendChina官方:假定您已经了解 PHP、应用程序设计以及如何在数据库中工作。您不需要具有框架使用经验,但是您应当已经准备好开始使用框架。

[b]在 Zend Framework中构建 Blahg[/b]
       首先,创建目录 /column/htdocs/zend 和 /column/protected/zend。这些目录将分别保存 Web 可访问的文件及 Web 不能访问的应用程序文件。在 /column/htdocs/zend 中,用以下命令行创建一个 .htaccess 文件:
[quote]RewriteEngine on
RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php[/quote]

       在涉及目录结构时,每个框架都有自己特定的要求。对于 Zend 框架,需要创建目录 /column/protected/zend/controllers、/column/protected/zend/models 和 /column/protected/zend/views 来保存控制器、模型和视图。此外,需要创建目录 /column/protected/zend/views/scripts;并且对于每个控制器,需要创建一个目录来保存一些视图。例如,您知道 Blahg 将需要为 post 控制器提供一些视图,那么就需要创建目录 /column/protected/zend/views/scripts/post 来保存该视图。

       已经准备好目录。该来构建模型了。

[b]构建 Zend posts 表和模型[/b]
       创建了将要使用的 posts 表。该表的模型非常简单。它应当被命名为 Posts.php,并且应当在 /column/protected/zend/models/ 创建它。Posts.php 将扩展 Zend_Db_Table 类,并且您将使用的大多数方法均继承自该类。如果打开代码归档中的 Posts.php 文件,您将看到实际代码非常少。

[b]构建 Zend Front 控制器和 PostController[/b]
       对于 Front 控制器,将在 /column/htdocs/zend 中创建 index.php 文件。此文件是应用程序公开给外界的惟一部分。应用程序的其余部分是通过此文件来访问的。Front 控制器需要完成几项事务:装入 Zend Loader(避免必须手动包含各个库)、设置与数据库的连接以及将请求分派给相应的应用程序控制器;在本例中为 PostController。

       如您所料,将在 /column/protected/zend/controllers 目录中创建 PostController.php 文件。需要创建的 PostController 十分简单。

       如果您是初学者,则需要包括先前创建的 posts 模型。并且可能需要创建 init 方法,在创建 PostController 对象时将调用该方法。在 init 方法中,可以设置将在后续操作中使用的视图和模型对象。您也许可以猜测到需要三个操作:indexAction、readAction 和 writeAction(操作的 xxxxxAction 命名约定遵循 Zend 框架规定)。

       indexAction 十分简单:获得所有的 posts 并将其分配给视图。readAction 不太复杂:通过请求获得 post ID、检索 post 并将 post 分配给视图。writeAction 也根本不复杂。如果发出了一个请求,则去掉所有标记并将数据保存到数据库中。否则,呈现表单。

       有关语法和结构的详细信息,请查阅代码归档中的 PostController。现在对控制器的处理已经完成,接着构建视图。

[b]构建 Zend post 视图[/b]
       任务即将完成。Blahg 要求使用一些视图,并且需要在 /column/protected/zend/views/scripts/posts 目录中创建所有这些视图。至少需要三个视图(index.php、read.php 和 write.php),不过代码归档中的代码使用了四个视图。视图都是十分简单的文件:索引视图和读取视图只是应用最少的格式输出分配给它们的数据,而写入视图将显示发布到 Blahg 中时要使用的表单。有关详细信息,请查阅代码下载中的视图。

       如果您已经正确地创建了模型、控制器和视图(或者正确地安装了代码),则应当能够通过转到 [url=http://localhost/zend/post]http://localhost/zend/post[/url] 访问Zend 框架版本的Blahg(假定您是在本地安装的所有内容)。

代码下载:[attach]117[/attach]

[color=#ff0000]ZendChina官方资讯,转载请以链接形式注名来源:[/color][url=http://www.zendchina.net/][color=#ff0000]ZendChina[/color][/url][color=#ff0000] - [/color][url=http://bbs.zendchina.net/thread-92-1-1.html][color=#ff0000]Zend Framework 构建样例应用程序[/color][/url]

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.