如何在 Zend Framework 2 中设置第一个应用程序

Posted

技术标签:

【中文标题】如何在 Zend Framework 2 中设置第一个应用程序【英文标题】:How to setup First Application in Zend Framework 2 【发布时间】:2012-10-07 21:38:12 【问题描述】:

我正在 zf2 中创建我的第一个应用程序。 我关注 Zend 官方网站 zf2 Skeleton Application。我已经从 github 下载了骨架应用程序,如给定链接中所示。当我将其解压缩并将其放入我的文件夹并运行它时,它会显示此致命错误

 Fatal error: Uncaught exception 'RuntimeException' with message 'Unable to load ZF2. 
 Run  `php composer.phar install` or define a ZF2_PATH environment variable.' in 
 D:\projects\zf2\zf2_app\init_autoloader.php:50 Stack trace: #0 D:\projects\zf2\zf2_app
 \public\index.php(9): require() #1 main thrown in D:\projects\zf2\zf2_app
 \init_autoloader.php on line 50

我不知道如何解决这个问题??

这个呢?

To install Zend Framework 2 into our application we simply type:
  php composer.phar self-update
  php composer.phar install

在哪里输入这些命令? 帮助我开发我的第一个 ZF2 应用

【问题讨论】:

@downVoter = 为什么?我真的不知道这就是我来SO的原因。而不是帮助你让我气馁:( 【参考方案1】:

好像你还没有下载 zf2 :) 从这里下载它http://framework.zend.com/downloads/latest#ZF2

将框架解压到vendor/ZF2。你完成了:) 现在浏览到您的应用,希望它显示 No Exception。

【讨论】:

【参考方案2】:

您应该打开一个 cmd 窗口并将目录更改为您的项目。然后您需要输入以下内容:

php composer.phar install

这将安装 Zend Skeleton 应用程序的所有库依赖项 - 在本例中为 ZF2。

【讨论】:

哦,非常感谢,当我获得足够的声誉时,我一定会把它标记为 TICK 但是,我在命令提示符下收到以下错误。 'php' 不是内部或外部命令、可运行程序或批处理文件。 @user2003356:这是一个不同的问题。快速将你的 php.exe 目录位置放到你的系统 PATH 变量中。【参考方案3】:

除了 Rob Allens 的回答之外,到目前为止,对于命令行经验较少的 Windows 用户,我得到了很好的回应。

您可能会发现我的博客也很有帮助:Zend Framework 2 installation on Xampp for Windows

【讨论】:

哦,那是伟大的山姆。优秀【参考方案4】:

让@Rob Allen 变得更容易怎么样?回答时,让其他读者可以节省24小时到1分钟!!我试图让您的回答更容易,如下所示:

1) httpd.conf
<VirtualHost *:80>
 ServerName site
 ServerAlias site
 DocumentRoot /var/www/html/s/public
 <Directory /var/www/html/s/public>
    #AddDefaultCharset utf-8
    DirectoryIndex index.php
    AllowOverride FileInfo
    Order allow,deny
    Allow from all
 </Directory>
</VirtualHost>

2) i did git clone git repo
$ ls
composer.json  composer.lock  composer.phar  config  data  db_bck  init_autoloader.php  LICENSE.txt  module  nbproject  public  README.md  vendor

3) I run and i get same error

4) I did now this

$ php composer.phar install
Loading composer repositories with package information
Installing dependencies from lock file
  - Installing zendframework/zendframework (2.0.6)
    Downloading: 100%         

    Skipped installation of bin/classmap_generator.php for package zendframework/zendframework: name conflicts with an existing file
zendframework/zendframework suggests installing doctrine/common (Doctrine\Common >=2.1 for annotation features)
zendframework/zendframework suggests installing ext-intl (ext/intl for i18n features)
zendframework/zendframework suggests installing pecl-weakref (Implementation of weak references for Zend\Stdlib\CallbackHandler)
zendframework/zendframework suggests installing zendframework/zendpdf (ZendPdf for creating PDF representations of barcodes)
zendframework/zendframework suggests installing zendframework/zendservice-recaptcha (ZendService\ReCaptcha for rendering ReCaptchas in Zend\Captcha and/or Zend\Form)
Generating autoload files


5) It works now

【讨论】:

【参考方案5】:

您可能需要按照以下步骤操作:

    从 Github 下载 ZF2 骨架应用程序。

    更改您要安装的目录,然后解压缩骨架应用程序。

    将目录更改为“ZendSkeletonApplication-master”,然后运行以下命令:

    php composer.phar 自我更新 php composer.phar 安装

【讨论】:

感谢您发布您的答案!请务必仔细阅读FAQ on Self-Promotion。另请注意,每次链接到自己的网站/产品时,都要求发布免责声明。【参考方案6】:

1.从你的 apache 启用 LoadModule rewrite_module modules/mod_rewrite.so

2.从您的 php.ini 中启用 extension=php_openssl.dll

3.从http://getcomposer.org/doc/00-intro.md#autoloading 安装 Composer。有适用于 Linux 和 windows 的说明。

4.从 github 下载骨架项目。(https://github.com/zendframework/ZendSkeletonApplication 并单击“Zip”按钮)到您的 htdocs。

5.进入刚刚下载好的骨架工程目录。

6.运行 php composer.phar install。这将下载所有依赖项。

7.转到http://framework.zend.com/manual/2.2/en/user-guide/skeleton-application.html并相应地创建一个虚拟主机。

<VirtualHost *:80>
  ServerName zf2-tutorial.localhost
DocumentRoot /path/to/zf2-tutorial/public
SetEnv APPLICATION_ENV "development"
<Directory /path/to/zf2-tutorial/public>
    DirectoryIndex index.php
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

8.转到 c:\windows\system32\drivers\etc\hosts (Windows) 或 /etc/hosts(Linux) 并添加以下行: 127.0.0.1 zf2-tutorial.localhost localhost

9.转到http://zf2-tutorial.localhost/,您应该会看到欢迎页面。

【讨论】:

谢谢,搜索了几个小时,终于成功了。 SetEnv VAR "value"【参考方案7】:

因为您已经下载了 GIT 文件 以下命令适用于 windows:

1) 转到相应的文件夹 2)运行命令->作曲家更新 3)那应该让您安装和选择可选模块 4) 最后 -> php -S 0.0.0.0:8080 -t .\public .\public\index.php

有了这个你应该可以访问http://localhost:8080/的索引页面

【讨论】:

以上是关于如何在 Zend Framework 2 中设置第一个应用程序的主要内容,如果未能解决你的问题,请参考以下文章

如何在远程域提供的脚本中设置第 3 方 cookie?

无法在Zend Framework中设置postDispatch()中的视图变量

如何在熊猫中设置第一列和第一行作为索引?

如何在 Access 2007 中设置第一个连续组合框不可见?

如何在 UIImage 数组中设置第二张或中间的图像? (斯威夫特 3)

如何在添加文本“Uhr”的String中设置第三个运算符?