前言:

最近开始接触关于PHP的框架的学习,然而PHP的框架少说也有七八种。

百度了一下,有人说ThinkPHP简单暴力的,有人说Laravel高大上的,等等等等,难以抉择。

最终我还是选择先从接触Zend公司官方设计的Zend Framework开始。(Zend Framework内部使用的CSS框架是我最喜欢的Bootstrap)

至少在2016年,Zend Framework已经升级至了3.x版本,按照官方的介绍,3.x版本的执行速度是2.x版本的4倍,并且良好的支持了PHP7。

出于装逼的目的,总觉得要安装个最新版本才行。。

到了要安装配置Zend Framework 的时候,发现网上也是以英语文档解释较多,一开始对着英文官网无从下手。。

(百度里或视频教程中关于Zend Framework的配置介绍大多是以前对应1.x或2.x版本的,那时候还没开始使用Composer,捣鼓了我好半天。。。)


安装环境介绍:

OS:Windows10(如果是高大上的MAC或者LINUX的话,也许差不多,不过SORRY无能为力。。。)

Apache: 2.4.25

PHP: 7.1.6(如果都2017年了还用PHP5.x的话是不是有点low了?嘿嘿)

(都是直接通过XAMPP3.2.2集成安装配置完成的,详细的请自行百度。。)

IDE:PhpStorm (JetBrains脑残粉)


项目创建步骤:

(1)Composer的安装

首先,我们进入Zend Framework的官网 framework.zend.com

按下主页的绿色超人右边的"Get Started"或者上方的"Install"进入安装介绍页面。

官方这里是推荐(默认)使用叫做Composer的软件来进行各种安装和细节配置,Composer这个软件很强大,这年头如果你要安装ThinkPHP、Laravel等其他框架,你会发现那些框架的官网也都是让你用Composer进行安装配置的。

有人会说,右边的Archives里面不是有各种版本的package可以下载直接用么?

是啊,都是1.x和2.x版本 的package,并没有3.x版本的。。3.0大概已经被官方强制用Composer才能装了(好像上GitHub也能搞下来)

因此我们需要先进行Composer的安装,到 getcomposer.org/download/ ,对于Windows用户,把 Composer-Setup.exe下载下来打开就可以了。

安装途中需要你告诉程序php.exe的位置,如果是像我这样用XAMPP或WAMP、LAMP啥的,一般就是在软件的php文件夹里了。

安装好后,用命令提示符输入composer,不出意外就会跳出一个大大的骚气的COMPOSER字样和一堆参数介绍,表明Composer安装成功了。

(2)用Composer创建Zend Framework项目

在前面的 framework.zend.com/downloads 页面里我们可以看到,官方提供给我们的命令是 >composer require zendframewok/zendframework。

但是,我们并没有必要这么做。。。

这样会把Zend Framework的61个小packages都安装进你的电脑里去(企业开发都用不着所有的包吧。。)

因此,我选择了Zend Framework的MVC Skeleton Application(网页右边可以看见一个同名选项)。

这是个包含了MVC核心程序核心内容的版本(相当于所谓的“标准安装”吧,那前面的就是“完整安装”了。。)

我在D:/下创建了一个叫ZendFramework的文件夹,然后在命令提示符内输入 >composer create-project zendframework/skeleton-application D:/ZendFramework

稍等片刻,就会发现ZendFramework文件夹中多了一堆东西,项目创建成功~~这就是框架的所有内容啦~~

框架内的文件夹大致没有太大变化,但是原本包含控制器和视图的Application文件夹在3.0版本中从第一层目录消失,被放入了叫做module的文件夹内。

(3)Zend Framework使用测试

将刚才的Zend Framework文件夹移动到你使用localhost的根目录下(XAMPP默认为htdocs文件夹)。

启动Apache,打开浏览器,网址输入localhost/ZendFramework/public (因为Zend Framework的入口文件index.php位于public文件夹内)

如果出现了Welcome to Zend Framework的欢迎页面,那就是OK啦~~

从该页面的"Congratulations! You have successfully installed the ZF Skeleton Application. You are currently running Zend Framework version 3.0.2."中也可以看出,我们所成功安装的是3.0版本的Zend Framework。


附言:

Zend Framework 3内置了.htaccess文件配置了对于Overwrite功能的修改,新版的Apache+PHP7理论上不需要做源代码修改就直接可以使用了。

然而如果是老版本的Apache或PHP的话,可能需要修改httpd.conf和php.ini才行(详细的还是请百度。。)

如果是要安装其他的框架,我想应该也大同小异了吧?都是一个Composer就能搞定的事情嘛。。

希望本文能够帮助那些遇到相同困难的小伙伴~~

Zend Framework 3.0 安装及创建初始化项目教程的更多相关文章

  1. .NET Framework 2.0安装问题

    在.NET Framework 2.0安装的时候,如果提示 system.deployment.dll失败,另一个程序正在使用此文件,进程无法访问.这种情况下,我们可能的解决方案是: 关闭掉杀毒软件在 ...

  2. Django-下载安装-配置-创建django项目-三板斧简单使用

    目录 Django 简介 使用 django 的注意事项 计算机名不能有中文 Django版本问题 django下载安装 在命令行下载安装 在pycharm图形界面下载安装 检验是否安装成功 创建Dj ...

  3. loadrunner11.0 安装破解详解使用教程

    loadrunner11.0 安装破解详解使用教程 来源:互联网 作者:佚名 时间:01-21 10:25:34 [大 中 小] 很多朋友下载了loadrunner11但不是很会使用,这里简单介绍下安 ...

  4. PS抠图神器: KnockOut 2.0安装汉化和使用教程

    PS抠图神器: KnockOut 2.0安装汉化和使用教程 http://jingyan.baidu.com/article/6b97984d8aeadc1ca2b0bf3b.html

  5. .Net Framework 4.0安装cmd命令

    在安装系统以后和.Net FrameWork 后,通过cmd编译编写的程序时总是提示编译错误.可以通过cmd命令安装相应的.net framework版本. 具体步骤如下: 1.以管理员身份打开cmd ...

  6. VS2010已停止工作,framework 4.0安装失败

    好久没在台式机上写程序了,今天打开一个解决方案,报错: 从来没有遇到这种情况,重新关闭解决方案,在菜单栏中打开解决方案说没有framework 4.0,其实我安装的是4.5 ,也有4.0,于是全部卸载 ...

  7. vue-cli 3.0 安装和创建项目流程

    使用前我们先了解下3.0较2.0有哪些区别 一.3.0 新加入了 TypeScript 以及 PWA 的支持二.部分命令发生了变化: 1.下载安装  npm install -g vue@cli 2. ...

  8. .net framework 4.0 安装一直失败,错误代码0x80240037,解决

    本文链接:https://blog.csdn.net/Chris_Ime/article/details/81626778 今天遇到一问题,在新电脑win7系统上安装.net framework 4. ...

  9. Zend 3.3.0安装 ZendOptimizer 3.3.0 for Windows 稳定版 下载

    用的某php网站系统今天打开时乱码了(zend 200407...),但phpmyadmin能正常使用: 搜索下,重新安装zend可以解决,系统上原来的版本是Zend 3.3.0:下了个,安装后果然把 ...

随机推荐

  1. Java的常用操作符

    操作符用于接受一个或多个参数,并生成一个新的值.加号和一元的正号(+).减号和一元的负号(一).乘号(*).除号(/)以及赋值号(=)的用法和大多数编程语言都类似. 操作符作用于操作数,生成一个新值. ...

  2. SQL分组查询

      把数据分成多个逻辑组,以便能对每个组的数据进行操作,对每个组进行聚集计算. 1.创建分组 分组是在SELECT语句的GROUP BY子句中建立的 例子:         SELECT vendId ...

  3. 使用Groovy处理SoapUI中Json response

    最近工作中,处理最多的就是xml和json类型response,在SoapUI中request里面直接添加assertion处理json response的话,可以采用以下方式: import gro ...

  4. Jmeter遇到的坑

    一.分布式获取不到结果需要改配置文件   在jmeter.properties文件找到mode=Standard去掉# 二.有一个请求要循环查询进度,当进度为100为,跳出循环.这个要怎么操作? ${ ...

  5. 实现点击后创建div,若对div2秒无操作则将div隐藏,鼠标移上div让它不隐藏,移出div超过两秒则div隐藏

    $('.addLabel').on('click', function () { setTimeout(function(){ if(hoverflag==0){ $(".labelHide ...

  6. java Properties类得到当前的系统属性

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt218 package com.shi.simpleUtil; import  ...

  7. 学习Python Day1

    学习PythonDay1,主要是学习了循环,while循环,for循环:while循环加if.else以及elif,for循环嵌套for循环:break,终止循环,continue跳出循环:for i ...

  8. bean的单例

    通过改变中的scope属性,默认是singleton单例.而prototype则指定每getbean得到的都是不同实例. 验证代码: ①:验证默认singleton //验证<bean id=& ...

  9. 201521123023《java程序设计》第四周学习总结

    1. 本周学习总结 思维导图 常规: (1)抽象类:不能被直接实例化.只能作为其它类的父类,这一点与final类正好相反.用关键词abstract声明. (2)继承:只能有一个父类,即单继承,子类继承 ...

  10. 201521123098 《Java程序设计》第1周学习总结

    1. 本章学习总结 在本章的学习中,我和当初学习C语言一样由"Hello world"入手,初步了解了: 1. *NotePad++*的文件创建和编写*Hello world.ja ...