Zend Framework入门应用实例详解
.htaccess文件
.htaccess文件用来实现URL重置,即当用户访问某资源时,会将其重新定位到指定的文件下。
代码示例:
RewriteEngine on RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php
其中,行1表示重置引擎打开,行2表示当访问除js、ico、gif、jpg、png、css以外的文件时,
都将被重置到index.php文件下。
注:
该重写规则只能用于Apache服务器,需要用到Apache的重定向模块。若想有效,要开启功能。确认Apache的httpd.conf配置文件下的
#LoadModule rewrite_module modules/mod_rewrite.so
开启,也就是把#号去除。
自动生成目录
下载的zend解压后,会有两个核心目录,一个是library,一个是bin。在bin下面有个zf.bat文件可以用来智能生成Zend Framework目录结构。
但是使用之前必须做一定的配置,也就是环境变量的配置。这样才能直接调用其命令。否则无法调用生成命令。
一、配置环境变量
配置过程如图所示:
添加完path之后,就可以直接在“小黑框”,也就是CMD中直接调用指令了。这里配置了两个,一个是zend下的bin目录,一个是xampp下的php目录。因为指令需要用到这两个目录下的一些文件。
二、测试是否成功
出现上图的信息,说明环境变量配置成功了。
三、执行生成指令
zf create project zfdemo
这个时候,就会生成一个工程目录,如上面的提示所示。在C盘下会有一个目录zfdemo。
四、拷贝目录中的信息到项目文件夹下并测试
这里的入口文件在public下面
所以在浏览器中输入地址"http://localhost/zendDemo/public/"
注:项目的名称为zendDemo
如果不出差错的话,就会看到成功的执行结果。如下图所示:
注:因为我重写了默认的视图文件内容,看到的就是“世界你好”这四个字。
改造
一、创建自己的控制器
在application/controllers/目录下创建一个名为SelfController.php的控制器,并输入以下代码。
<?php class SelfController extends Zend_Controller_Action{ public function selfAction(){ //self方法 } public function myAction(){ //my方法 } }
上述代码定义了一个SelfController类,并在该类中定义了selfAction()方法和myAction()方法。
二、创建相应的视图文件
在application/views/scripts/self/目录下创建self.phtml文件,代码如下:
<html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/> t tle>self方法的显示视图</title> </he > <h1> self方法的显示视图</h1> </body
继续在同一目录下创建my.phtml文件,其代码如下:
<html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/> <title>my方法的显示视图</title> </head> <body> <h1>my方法的显示视图</h1> </body> </html>
三、测试与执行
应该先理解Zend Framework是如何处理HTTP请求的。默认情况下,URL的第一个部分会映射到一个控制器,第二个部分则映射到控制器类中的Action方法中。
执行结果如下图所示:
希望本文所述对大家基于Zend Framework框架的PHP程序设计有所帮助。
更多Zend Framework入门应用实例详解相关文章请关注PHP中文网!
推荐阅读
-
详解微信小程序框架详解及实例应用
-
Zend Framework 入门(2)—多国语言支持
-
Zend Framework动作助手FlashMessenger用法详解,zendflashmessenger_PHP教程
-
Zend Framework教程之Loader以及PluginLoader用法详解_PHP
-
Python机器学习应用之决策树分类实例详解
-
Android应用App更新实例详解
-
Zend Framework入门指引
-
Zend Framework 2.0事件管理器(The EventManager)入门教程
-
IOS 图文混排(CoreText.framework)详解及实例
-
应用市场中Java拦截器和切面的使用实例详解