Zend Framework入门应用实例详解


Posted in PHP onDecember 11, 2016

本文实例讲述了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目录结构。

但是使用之前必须做一定的配置,也就是环境变量的配置。这样才能直接调用其命令。否则无法调用生成命令。

一、配置环境变量

配置过程如图所示:

Zend Framework入门应用实例详解

添加完path之后,就可以直接在“小黑框”,也就是CMD中直接调用指令了。这里配置了两个,一个是zend下的bin目录,一个是xampp下的php目录。因为指令需要用到这两个目录下的一些文件。

二、测试是否成功

Zend Framework入门应用实例详解

出现上图的信息,说明环境变量配置成功了。

三、执行生成指令

zf create project zfdemo

Zend Framework入门应用实例详解

这个时候,就会生成一个工程目录,如上面的提示所示。在C盘下会有一个目录zfdemo。

Zend Framework入门应用实例详解

四、拷贝目录中的信息到项目文件夹下并测试

这里的入口文件在public下面

所以在浏览器中输入地址"http://localhost/zendDemo/public/"

注:项目的名称为zendDemo

如果不出差错的话,就会看到成功的执行结果。如下图所示:

Zend Framework入门应用实例详解

注:因为我重写了默认的视图文件内容,看到的就是“世界你好”这四个字。

改造

一、创建自己的控制器

在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"/>
  <title>self方法的显示视图</title>
</head>
<body>
  <h1>self方法的显示视图</h1>
</body>
</html>

继续在同一目录下创建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入门应用实例详解

希望本文所述对大家基于Zend Framework框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP面向对象编程快速入门
Dec 14 PHP
php 网页播放器用来播放在线视频的代码(自动判断并选择视频文件类型)
Jun 03 PHP
PHP在特殊字符前加斜杠的实现代码
Jul 17 PHP
基于header的一些常用指令详解
Jun 06 PHP
PHP字符串的连接的简单实例
Dec 30 PHP
ThinkPHP模板Switch标签用法示例
Jun 30 PHP
php中smarty实现多模版网站的方法
Jun 11 PHP
Yii2隐藏frontend/web和backend/web的方法
Dec 12 PHP
详解php实现页面静态化原理
Jun 21 PHP
PHP基于自定义类随机生成姓名的方法示例
Aug 05 PHP
PHP实现从上往下打印二叉树的方法
Jan 18 PHP
PHP实现的日历功能示例
Sep 01 PHP
Zend Framework前端控制器用法示例
Dec 11 #PHP
Zend Framework路由器用法实例详解
Dec 11 #PHP
Zend Framework分发器用法示例
Dec 11 #PHP
PHP与SQL语句常用大全
Dec 10 #PHP
PHP中SQL查询语句的id=%d解释(推荐)
Dec 10 #PHP
PHP获取页面执行时间的方法(推荐)
Dec 10 #PHP
PHP页面跳转实现延时跳转的方法
Dec 10 #PHP
You might like
用PHP编程开发“虚拟域名”系统
2006/10/09 PHP
Apache环境下PHP利用HTTP缓存协议原理解析及应用分析
2010/02/16 PHP
ThinkPHP调用百度翻译类实现在线翻译
2014/06/26 PHP
php 利用socket发送HTTP请求(GET,POST)
2015/08/24 PHP
让你的PHP7更快之Hugepage用法分析
2016/05/31 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
2018/02/10 PHP
不错的asp中显示新闻的功能
2006/10/13 Javascript
jQuery 自定义函数写法分享
2012/03/30 Javascript
jquery 快速回到页首的方法
2013/12/05 Javascript
window.onload使用指南
2015/09/13 Javascript
jQuery插件Validate实现自定义表单验证
2016/01/18 Javascript
js变量提升深入理解
2016/09/16 Javascript
详解Chai.js断言库API中文文档
2018/01/31 Javascript
详解如何在vue-cli中使用vuex
2018/08/07 Javascript
jquery判断滚动条距离顶部的距离方法
2018/09/05 jQuery
浅谈vue中$event理解和框架中在包含默认值外传参
2020/08/07 Javascript
vue-cli4使用全局less文件中的变量配置操作
2020/10/21 Javascript
[40:12]Liquid vs Chaos 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
Android基于TCP和URL协议的网络编程示例【附demo源码下载】
2018/01/23 Python
Python实现的堆排序算法示例
2018/04/29 Python
pandas 按照特定顺序输出的实现代码
2018/07/10 Python
python实现AES和RSA加解密的方法
2019/03/28 Python
python中的数据结构比较
2019/05/13 Python
python os.path.isfile 的使用误区详解
2019/11/29 Python
关于sys.stdout和print的区别详解
2019/12/05 Python
html5中为audio标签增加停止按钮动作实现方法
2013/01/04 HTML / CSS
世界上最大的餐具公司:Oneida
2016/12/17 全球购物
Java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?
2012/05/30 面试题
商务助理岗位职责
2013/11/13 职场文书
仓库理货员岗位职责
2013/12/18 职场文书
铁路工务反思材料
2014/02/07 职场文书
捐助倡议书范文
2014/04/15 职场文书
教师查摆问题及整改措施
2014/10/11 职场文书
电影建国大业观后感
2015/06/01 职场文书
2015年基层党建工作汇报材料
2015/06/25 职场文书
Oracle更换为MySQL遇到的问题及解决
2021/05/21 Oracle