2011-06-16 143 views
1

剛開始使用Zend Framework Zf Tool時,我已經遇到了一個我花費數小時試圖解決的問題。Zf Tool找不到Zend Framework

由於某些原因,當我運行Zf show version命令時,我得到一個ZF ERROR,指出它找不到Zend Framework,將它添加到我的php.ini include_directory中。

這是我的設置。我目前在我的本地機器上安裝了WAMP。

C:\ WAMP

我複製了zf.bat和zf.php文件到服務器,PHP目錄。 php目錄的路徑已被添加到路徑環境變量中。我非常確定它的工作原理,因爲我在控制檯中運行了zf show version命令並獲得了ZF ERROR。

我把我的Zend Framework副本內

C:\ WAMP \包括

所以我說這在php.ini的include_path。 include_path =「。; c:\ wamp \ includes」

我通過檢查phpinfo()函數檢查了這個設置是否設置正確。其中顯示了包含路徑。; c:\ wamp \ includes。; c:\ wamp \包含

因此,我認爲我已將所有設置正確。我無法弄清楚我錯過了什麼。

我也嘗試設置ZEND_TOOL_INCLUDE_PATH沒有成功。

任何幫助,將不勝感激。 PS我沒有檢查其他帖子在這裏,但沒有任何建議

回答

2

我已經完成了!最後。我有我的本地wamp設置的方式有2個php.ini文件,我必須編輯。

使不同的是Apache2目錄內的php.ini。

感謝大家的幫助。我很感激。

+0

在C:\ wamp \ bin \ php \ php5.3.5和C:\ wamp \ bin \ apache \ Apache2.2.17 \ bin中 – Tjorriemorrie 2012-07-30 14:36:23

0

那麼我不知道你是如何下載安裝的框架,但我的猜測是,你沒有足夠的基於Zend發佈軟件包的方式包括路徑。包含在Zend Framework安裝的Zend文件夾需要它的父文件夾是包括路徑所以通常你會加入類似:

c:\wamp\includes\ZF_BASE_DIR\library

這是因爲ZF封裝結構是這樣的:

ZendFramework-VERSION/ 
    README.txt 
    INSTALL.txt 
    LICENSE.txt 
    bin/ 
    library/ 
+0

感謝您的回覆。我其實已經設定好了。我已將庫內的Zend文件夾複製到c:\ wamp \ includes \文件夾中,這就是爲什麼我覺得它很奇怪,它不會工作? – hooligan 2011-06-17 09:37:45

+0

嗯看着你的文章再次看起來像你的包含路徑缺少路徑分隔符(;)'。; c:\ wamp \ includes。; c:\ wamp \ includes'由php報告應該是'。; c: \ wamp \ includes;。; c:\ wamp \ includes'因此無法添加分隔符。即使這是正確的,你已經添加了兩次相同的包含路徑,但暫時不應該有太大影響。 – prodigitalson 2011-06-17 18:55:51

0

如果從存檔提取ZF你會得到一個Zend-some_version文件夾,但實際ZF是 「包含路徑\ Zend的-some_version \庫\ Zend的」,所以你的include路徑應指向include_path\Zend-some_version\library\

+0

感謝您的回覆,這是非常奇怪的事情,因爲我將庫內部的Zend文件夾複製到include_path目錄中。這就是爲什麼我覺得它奇怪它不起作用。 – hooligan 2011-06-17 09:39:21

0

我想補充一下Tjorriemorrie說,詳細我如何得到我的Win 7的安裝一樣簡單工作,儘可能地解釋:

  1. 從「http://framework.zend.com/downloads/latest」下載您喜歡的Zend包「C :\ wamp \ www \「

  2. 解壓縮zip文件,以便在」C:\ wamp \ www \「下解壓縮Zend文件夾(帶有版本名稱)。

  3. 通過讓你最終 「C:\ WAMP \ WWW \ ZendFramework」 刪除版本重命名文件夾

  4. 與運行在瀏覽器中的phpinfo()一個簡單的PHP文件。請注意以下條目:「變量」下的「_SERVER [」PATH「]」 「路徑」下的環境 「Loaded Configuration File」頂部 「include_path」位於Core下方並且 「extension_dir」位於Core下。

  5. 「_ SERVER [」 PATH「]」和「路徑」必須是相同的(沒有道理)

  6. 應該有你的Apache服務器只有一個上市應該是在「加載的配置文件列表「但沒有」php.ini「。因此,如果您的「Loaded Configuration File」爲「C:\ wamp \ bin \ apache \ apache2.2.22 \ bin \ php.ini」,您必須在「C:\ wamp \ bin \ apache \ apache2.2.22 \ bin」你的路徑必須是對apache服務器的唯一引用。如果您有多個對Apache服務器的引用,Windows可能會根據您的PATH命令選擇錯誤的並使用錯誤的php.ini文件。

  7. 你的「extension_dir」會告訴你你正在使用的php的版本和位置。 「C:\ php」,「C:\ wamp \ bin \ php \ php5.4.3」,「C:\ wamp \ bin \ php \ php5.3 ......」 。「等等。擴展目錄會告訴你哪個php文件夾中的ZF文件夾在查找它的庫時將」引用「。例如,如果您的擴展目錄中顯示「c:/wamp/bin/php/php5.4.3/ext/」,則需要關注「c:/wamp/bin/php/php5.4.3」

  8. 回到你的路徑和a)添加此PHP版本的字符串和b)刪除其他php文件夾的所有其他參考

  9. 現在,你知道你的運行和主要的PHP和Apache文件夾,關機(不要重新啓動),關閉計算機並重新啓動(重新啓動並不總是讓PATH完全復位)

  10. 轉到php.ini文件中的a)「C:\ wamp \ bin \ apache \ apache2.xy \ bin「和」C:\ wamp \ bin \ php \ php5.4.3「並找到include_path var適用於Windows

  11. 替換默認行,如下所示: ; include_path =「。; c:\ php \ includes;」包括; C:\ wamp \ www \ ZendFramework \ library「 與 include_path =」。; c:\ php \ includes「就像Tjorriemorrie指出的那樣。

  12. 重新啓動所有服務通過點擊WAMP的圖標,並選擇上述選項

  13. 在這一點上我的ZF工具在工作。但是,爲了安全起見,關機和啓動

  14. 微笑和搶啤酒!

相關問題