2009-12-06 81 views
23

“安装Zend Framework非常简单!!!!”是啊...如何在Windows上安装Zend Framework

好吧我正在与一个初学者的书和一件事情是不是过分详细是最重要的部分:安装织补物。在浏览几小时的快速入门指南后,它所说的全部是:

“下载Zend [...]添加包含目录(bla bla),你完成了!”

对,我完成了使用Zend。

好的,不是真的,还没有。我求求你们,我想上床睡觉,请告诉我怎么安装这个框架(简单的六年级的细节)。我在我的htdocs目录中有解压缩的文件夹,并且我将zf.bat + zf.php放入了htdocs根目录。

接下来是什么?

非常感谢。

+0

很高兴您找到了适合您的解决方案。用PHP玩得开心! – 2009-12-16 19:50:47

+1

我只想补充说,一旦你设置你的环境变量来包含php.exe,zf.bat和ZF库,你将需要重新启动命令提示符以使路径生效。看起来,一旦您点击“确定”,路径中的更改就会在整个Windows中广播,但您需要重新启动应用程序才能在该应用程序中生效。 – musicliftsme 2011-07-15 05:18:30

回答

18

看起来您在Windows命令shell中遇到了PATH问题。这与Zend Framework无关。在shell环境中理解PATH概念是许多程序员必须克服的障碍,但是一旦你获得了它,就可以使用它来提高你的工作效率。

您始终可以使用该程序的绝对路径从命令行程序运行程序。例如:

C:\> c:\wamp\bin\php\php.exe 

您还可以运行使用相对路径的命令。也就是说,您可以输入从当前工作目录到要运行程序的位置的路径。

C:\> cd c:\wamp 
C:\> bin\php\php.exe 

但是,如果你在运行命令外壳命令没有命名的完整路径可执行文件,外壳试图找到程序的可执行文件在你PATH环境变量中列出的目录之一。也就是说,路径是一个以分号分隔的目录名称的字符串。要运行可执行文件,外壳会尝试该列表中的每个目录,按顺序,如果你有

C:\> type %PATH% 
C:\WINDOWS\;C:\WINDOWS\SYSTEM32 
C:\> php.exe 
...error that it cannot find php.exe... 

特殊情况:运行php.exe也适用,如果你的当前工作目录恰好是该程序的可执行文件的位置。但这只是一个使用相对路径的例子,使用一个具有零目录级别的路径。

第二个问题是您正在运行zf.bat这是一个脚本,它会在不指定路径的情况下调用php.exe。它假定您已将php.exe的位置添加到您的PATH环境变量中。

C:\> SET PATH=%PATH%;C:\wamp\bin\php 
C:\> php.exe -v 
PHP 5.3.1 (cli) (built: Nov 29 2009 13:59:20) 
Copyright (c) 1997-2009 The PHP Group 
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies 

zf.bat脚本本身也需要找到。您可以通过将其所在的目录添加到您的目录PATH来完成此操作。假设你C:\zf下安装Zend框架,例如:

C:\> type %PATH% 
C:\WINDOWS\;C:\WINDOWS\SYSTEM32;C:\wamp\bin\php 
C:\> zf.bat 
...error that it cannot find zf.bat... 
C:\> SET PATH=%PATH%;C:\zf\bin 
C:\> zf.bat show version 
Zend Framework Version: 1.10.0dev 

我也建议您安装Zend Framework的htdocs目录。您的htdocs下只需要一个PHP文件:这是Zend Framework用于实例化Front Controller并分派请求的单个引导文件。

当您使用zf.bat为您生成骨架应用程序时,它会在该目录内创建一个目录public,并带有一个PHP脚本index.php。这index.php文件是您需要在您的htdocs目录中的文件。您还需要使用CSS,Javascript和图片等资源,并将其置于您的htdocs之下。其余的应用程序代码和整个Zend Framework本身应该是以外的您的htdocs。尤其是存储敏感数据的任何配置文件,如数据库密码等。

您可以编辑index.php文件。它可以定义一个PHP常量APPLICATION_PATH,这是其他应用程序代码的位置。

<?php 

defined("APPLICATION_PATH") 
    || define("APPLICATION_PATH", realpath(dirname(__FILE__) . "/../application" 
)); 

,对于APPLICATION_PATH默认定义假设你htdocs是姊妹目录由zf.bat工具生成的应用程序代码休息。您当然可以将您的应用代码放在其他任何位置,但是您必须更改上述代码,以便index.php脚本找到它。

此外index.php脚本可能会将库代码的位置添加到PHP的INCLUDE_PATH。如果您需要使Zend Framework库可找到,或者如果您在应用程序中使用其他第三方PHP代码,这非常有用。假设您在C:\zf下安装了Zend Framework,则应该将其library子目录添加到您的PHP INCLUDE_PATH

// Ensure library/ is on include_path 
set_include_path(implode(PATH_SEPARATOR, array(
    "C:/zf/library", 
    realpath(APPLICATION_PATH . "/../library"), 
    get_include_path() 
))); 

zf.bat脚本生成的代码模板,尽量让了解您的代码位于合理的默认猜测,但你的环境是你自己的,并可以很容易地修改这些脚本以指定安装的真正位置你的代码和库。

2

该框架不必位于htdocs文件夹中,它可以在任何地方。一旦你解压了,你就完成了50%。

下一步是找到您的php.ini文件(例如,在您的htdocs文件夹中创建一个文件<?php phpinfo();?>执行它并在第一个块中查找“Configuration(php.ini)filepath”(或类似)。 。文件的路径添加到ZendFramework到include_dir指令这有可能包括library文件夹的设置可能是这样的:。

include_dir = .;c:\php\ZendFramework\library 

通常还包括路径PEAR

然后重新启动服务器。

你完成了。

+0

好的,当我编写c:\ htdocs \ zf.bat在cmd中创建项目快速入门 时,它通知我“php.exe”不存在。是什么赋予了?? – Gal 2009-12-06 23:43:36

+0

php.ini文件没有执行,只是查看它们,因为它们是一个简单的文本文件。 – markus 2009-12-06 23:46:57

+0

@Gal,因为您似乎在Windows上,请将PHP添加到您的环境变量中以使用PHP CLI:http://www.rasyid.net/2008/05/11/setting-path-for-php-cli/ – chelmertz 2009-12-07 10:06:39

2
  1. 的Zend!= Zend框架
  2. Zend框架并不需要安装。它只是一个图书馆,它只是需要放置在某个地方。
  3. 由于johannes说你需要告诉php在哪里寻找库,所以你添加Zend Framework库所在的文件夹到你的php包含路径。

就是这样,没有什么更多!

现在看来您的真正问题与Zend Framework本身无关。您正尝试使用Zend_Tool,但命令行工具zf.bat不在您的系统路径中,因此您无法使用命令'zf'。 Zend Framework在没有工具的情况下工作正常,如果您想反正使用它,请在zf.bat所在的文件夹中调用该命令,或者将zf.bat的路径添加到系统路径中。

这意味着在非含糊道:

if (path-to-zf.bat isOn SYSTEM_PATH) 
{ 
    you can call 'zf' from anywhere; 
} 
else 
{ 
    you must be in the folder where zf.bat also is, if you want to call 'zf'; 
} 
+1

谢谢,但你程序员总是给出这样模糊的答案... 我的意思是,“调用命令,当你在zf.bat所在的文件夹中或将zf.bat的路径添加到你的系统路径。” - 请问,你不能告诉我是一个完整的新手吗? – Gal 2009-12-06 23:57:33

+0

此外,它仍然告诉我“php.exe”文件不存在,当我看着zf.bat我看到它包含“假设php.exe是可执行的” – Gal 2009-12-07 00:02:41

+3

如果你是一个完整的新手那么我会建议不要打扰工具。 – markus 2009-12-07 00:02:47

0

加尔 - 我有同样的问题。我们本周末必须在同一本书上工作。

我解决了项目创建问题,当我发现在终端窗口中,您需要先导航到您创建的PHP主目录。

因此,换句话说,如果你是在PHP5文件夹,输入“ZF创建项目C:/阿帕奇/ htdocs中/项目名称”

我有同样的问题重:缺少php.exe的文件,直到我想通了这出。

-

这是个好消息。坏消息是,当你尝试设置控制器和操作时,你会遇到类似的问题,我的修复程序将无法工作。我仍然没有想到这一点,所以我会再次发布更多的信息,也许其他人可以帮助。

+1

谢谢你,我会研究一下。 有时我只是觉得打这些“太简单了!”与充气橡胶锤头在家伙! – Gal 2009-12-07 00:51:06

+0

我安装了PHP到c:\ php并且它在那里。 – Gal 2009-12-07 01:00:07

+0

对,它是php-dist.ini,尝试复制/粘贴它,并将名称从php-dist.ini更改为php.ini,对我有用 – Gal 2009-12-07 01:08:45

0

如果我在这里输入它更容易阅读。

这里有一个一步一步:

  • 打开终端窗口
  • 键入cd C:\
  • 键入cd PHP
  • 型ZF创建项目C:/阿帕奇/ htdocs中/ PROJECTNAME

替换您的目录和项目名称,我使用全部大写。

这应该工作。请注意,您必须导航到PHP主目录,因为这是php.exe文件的位置,并且这是zf.bat和zf.php文件所在的位置。当使用Zend_Tool时,显然这两个都是必需的。

0

你不说你使用的是什么web堆栈,但是我发现在Windows上使用Zend的最简单的方法是安装Zend Core。这将安装一个预先配置了Zend Framework的完整堆栈。

0

加尔,我不明白你想做什么。

该框架没有安装或配置。 你只需要

  1. 拆开框架的任何地方
  2. 创建一个项目运行ZF打造 “MyProject的”
  3. /library => root folder of the framework创建shourtcut /链接。您也可以将整个框架解压到这个文件夹(/库)中,但是如果您有很多项目,您将以磁盘空间的许多副本结束。
  4. 将您的apache配置更改为在将浏览器重定向到您的网站时打开/myproject/public/index.php。

我的意思是,这与zf无关,如果你在你的计算机上创建一个站点,你必须告诉Apache它在哪里。

你总是可以运行zf.bat写入整个路径。如果zf.bat返回错误,那么很可能你在安装php时遇到了问题。

以防万一它是有帮助的,这是一个项目,我的Apache配置(httpd.conf文件)命名zf_cms

<VirtualHost *:80> 
ServerAdmin [email protected] 
DocumentRoot "C:\Users\alex\Documents\My Web Sites\zf_cms/public" 
ServerName zf_cms.conexion 

<Directory "C:\Users\alex\Documents\My Web Sites\zf_cms/public"> 
    #DirectoryIndex index.php 
    AllowOverride All 
    Order allow,deny 
    Allow from all 
</Directory> 

然后你必须加入这一行到%WINDIR%\ SYSTEM32 \驱动程序\等\主机

127.0.0.1  zf_cms.conexion 
+0

对我们来说,凡人? – 2012-12-10 09:30:01

1

http://normankosmal.com/wordpress/?p=47派生:

****> ****Process of install zend framework in window 
> 1) Download zend framework 
> 2)After installing xampp extract the 
> Zend Framework files into a folder of 
> your choice. Next step is to edit the 
> php.ini. Usually this file can be 
> found in the php folder in your xampp 
> installation. Find the line that says 
> include_path and edit the line like 
> this: 
>  Windows: “\path1;\path2″ 
>  include_path = “.;D:\Informatik\SERVER\xampp\php\pear\;D:\Informatik\SERVER\xampp\php\ZendFramework\library” 
>  3) 
>  did you add your php interpreter to %PATH%? 
>  In which file i have to add the PHP interpreter? 
>  You mean i need to edit zf.bat file 
>  SET ZF_SCRIPT=%PHP_DIR%\zf.php 
>  Here in place of %PHP_DIR% i need to add the path of my PHP directory? 
>  Can you plzz help me out. 
>  4) D:\Informatik\SERVER\xampp\htdocs>D:\Informatik\SERVER\xampp\php\ZendFramework\b 
>  in\zf.bat create project testproject******** 
相关问题