欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Zend Framework 入门(1)—快速上手

程序员文章站 2022-05-30 21:53:24
...

1. 安装

从 Zend Framework 的网页上下载最新版本。解压后,把整个目录拷贝到一个理想的地方,比如:/php/library/Zend。

打开 php.ini 文件,确认包含 Zend 目录的路径在 include_path 里定义了。以上面的配置为例,php.ini 中应有类似下面的条目:

include_path = ".:/php/library"

注意:Windows 下的写法略有不同,应该类似于 include_path = ".;C:\php\library"

初始的安装就这么简单。Zend Framework 的一些组件会用到 php 的一些附加模块。具体的要求请参考这里。

2. 项目的目录结构

如果你的项目不包含多个模块,可以用下面的目录结构:

application/controllers/IndexController.phpmodels/views/scripts/index/index.phtmlhelpers/filters/html/.htaccessindex.php如果你的项目要包含多个模块(比如:博客,社区,等等),那么建议使用模块化的目录结构。

3. 网页的根目录

网页的根目录应指向上述目录结构中的 html 文件夹。

4. 重写规则

编辑 html/.htaccess 文件,加入下面两行:

RewriteEngine onRewriteRule !\.(js|ico|gif|jpg|png|CSS)$ index.php注意:上述是针对 apache 的配置。如果是其他的服务器,请参考这里。

5. 引导程序

编辑 html/index.php 文件,敲入下面代码:

Zend Framework 的默认路由规则是 http://域名/控制器名/动作(方法)名。例如:

http://example.com/user/show 会被解析到名为 User 的控制器以及该控制器中定义的 show 方法。如果该方法没有定义,则默认转到 index 方法。

注意:在代码中,控制器名的后面要加上 Controller,而动作名的后面要加上 Action。

编辑 application/controllers/IndexController.php 文件,输入:
/** Zend_Controller_Action */
require_once'Zend/Controller/Action.php';

classIndexControllerextendsZend_Controller_Action
{
  public functionindexAction()
  {
  }
}

7. 视图(页面)脚本

编辑 application/views/scripts/index/index.phtml,输入:

-//W3C//DTD XHTML 1.0 Strict//EN""

http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">My first Zend Framework App

Hello, World!

8. 错误控制器

默认情况下,Zend Framework 的错误处理插件是被注册的。它需要一个错误控制器来处理错误。缺省的错误控制处理被假定为 ErrorController 以及其中定义的 errorAction。

编辑 application/controllers/ErrorController.php,输入:
/** Zend_Controller_Action */
require_once'Zend/Controller/Action.php';

classErrorControllerextendsZend_Controller_Action
{
  public functionerrorAction()
  {
  }
}

下面是对应的视图脚本。编辑 application/views/scripts/error/error.phtml,输入:

-//W3C//DTD XHTML 1.0 Strict//EN""

http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Error

An error occurred

An error occurred; please try again later.

9. 运行

好,现在运行网站。在浏览器中键入下面三个地址,得到的结果应该是一样的——就是最最常见的“Hello, World!“。

http://域名
http://域名/index
http://域名/index/index
如果是这样,那么恭喜你!