Zend Framework是php官方推出的一个框架。
以前刚学的时候不经意,根本没有在意这类框架,现在真正要做开发了才发现这类框架的用处。
不少朋友问:Zend Framework(ZF)到底是个什么东西啊?
这个问题我也回答不上来,ZF包含了很多非常多的类,容器,方法等等,需要慢慢的理解~~
本文仅对windows上安装ZF做一个简短的说明。
- 安装PHP环境。Zend Framework(下面简称ZF)需要PHP 5.1.4+才能正常运行。如果你已经安装了PHP环境,跳过这一步。在Win下,我推荐使用WAMP做为开发环境。只要一路next,WAMP就把Apache、PHP5、MySQL5、phpMyAdmin等都装好了。(提醒:装好后mysql用户root默认密码为空)。点击WAMP的图标在ApacheModules下开启rewrite_module。如果你要使用Zend_Db以Mysql为例,还得开启PHP Setting->;PHPExtensions下的php_pdo和php_pdo_mysql扩展。
- 安装TortoiseSVN。 TortoiseSVN是svn在win下的客户端。安装TortoiseSVN的目的是为了获取最新的ZF源码,如果你使用zend定期发布的zf的源码,可以跳过这一步。
- 获取ZF源码。如果使用TortoiseSVN,在你磁盘的某处建立一个文件夹(比如ZF),在文件夹上点击右键,选择SVNcheckout,在地址栏中输入http://framework.zend.com/svn/framework/trunk,点击确定,TortoiseSVN就开始工作获取zf的源码了。你也可以http://framework.zend.com/download下载源码。不过总得来说,还是使用SVN方便。
- 为ZF添加路径。编辑php.ini(wamp的php.ini在apache/bin目录下),编辑include_path字段(举例include_path = ".;G:/你的ZF路径/library")。
- 配置ZF项目。推荐使用Haohappy的方法http://www.phpchina.com/bbs/thread-5730-1-4.html。
- 开始旅程。推荐论坛里的xgwork的新手学习 Zend Framework 框架连载(因为上一步中已经为ZF添加了路径,所以在该教程中的set_include_path可以省略),还有IBM的《理解Zend Framework》系列。
然后转载一下HaoHappy的一篇配置文件,这个篇文章是在windows上以apache作为例子的,当然在文章最后我会同时告知linux上的配置方法,大致全文如下:
在存在多个PHP程序的主机上安装ZF的方法
这是我在我们PHPEye的
Group上贴的,突然想到可能对大家有用就转过来了呵呵。
如果你的机子上已经有很多PHP项目,像我这样,绝大部份是不是基于ZF的。 我通常在WEB根目录下建立几十个目录,每个目录分别对应一个项目。原来我们访问项目可能是通过 http://localhost/project1, http://localhost/project2这样进行访问。通常来说项目间不会互相影响,因为我们的程序一般不严格要求文件的路径。只要相对路径对就行了。
但是现在我们需要安装ZF,ZF要求index.php位于站点的根目录下。那么怎么使原来的程序仍然可以正常访问,而基于ZF的程序我们也可以访问?比如我建了个项目是happycms,那么我希望输入 http://happycms就可以访问我的基于ZF的happycms项目,而其它项目仍然通过 http://localhost/project1这样访问。
我的作法:
1。编辑C:/WINDOWS/system32/drivers/etc目录下的hosts文件
在
127.0.0.1 localhost
下面加入:
127.0.0.1 happycms
2。编辑C:/Program Files/Apache
Group/Apache2/conf目录下的httpd.conf
加入 NameVirtualHost 127.0.0.1
在文件最末尾加上:
<VirtualHost 127.0.0.1>
ServerName localhost
DocumentRoot I:/Projects
RewriteEngine Off
</VirtualHost>
<VirtualHost 127.0.0.1>
ServerName happycms
DocumentRoot I:/Projects/happycms/svn/trunk/src/www
RewriteEngine On
RewriteCond %{REQUEST_URI} !^.*(/.css|/.js|/.gif|/.png|/.jpg|/.jpeg)$
RewriteRule ^(/.*)$ /index.php
</VirtualHost>
这样就完成了。 这样无论是否基于ZF的项目都可以共存,不互相影响。
如果你的机子上已经有很多PHP项目,像我这样,绝大部份是不是基于ZF的。 我通常在WEB根目录下建立几十个目录,每个目录分别对应一个项目。原来我们访问项目可能是通过 http://localhost/project1, http://localhost/project2这样进行访问。通常来说项目间不会互相影响,因为我们的程序一般不严格要求文件的路径。只要相对路径对就行了。
但是现在我们需要安装ZF,ZF要求index.php位于站点的根目录下。那么怎么使原来的程序仍然可以正常访问,而基于ZF的程序我们也可以访问?比如我建了个项目是happycms,那么我希望输入 http://happycms就可以访问我的基于ZF的happycms项目,而其它项目仍然通过 http://localhost/project1这样访问。
我的作法:
1。编辑C:/WINDOWS/system32/drivers/etc目录下的hosts文件
在
127.0.0.1 localhost
下面加入:
127.0.0.1 happycms
2。编辑C:/Program Files/Apache
Group/Apache2/conf目录下的httpd.conf
加入 NameVirtualHost 127.0.0.1
在文件最末尾加上:
<VirtualHost 127.0.0.1>
ServerName localhost
DocumentRoot I:/Projects
RewriteEngine Off
</VirtualHost>
<VirtualHost 127.0.0.1>
ServerName happycms
DocumentRoot I:/Projects/happycms/svn/trunk/src/www
RewriteEngine On
RewriteCond %{REQUEST_URI} !^.*(/.css|/.js|/.gif|/.png|/.jpg|/.jpeg)$
RewriteRule ^(/.*)$ /index.php
</VirtualHost>
这样就完成了。 这样无论是否基于ZF的项目都可以共存,不互相影响。
好了,我要说linux下的配置方法,其他的步骤相同,唯独在linux下第一步是修改/etc/hosts文件。
ok!简单的配置就到这里~~