2011-01-15 56 views
1

我分別安裝了PHP和MySql,經過很多研究,我得到了一個工作系統,配置了IIS和php.ini。我現在想要移動並需要一個ORM,單元測試框架等,並且發現這應該都可以通過PEAR獲得,並且PEAR已經在4.3之後的每個PHP中安裝,但是我的機器上沒有go-pear.bat。我從pear.php.net/go-pear下載了它,並得到了一系列警告,並最終出現錯誤。沒有WAMP/XAMPP的windows上的php ...這是一個愚蠢的愚蠢?

  1. WAMP/XAMPP「需要」使用任何PHP擴展?
  2. 爲什麼我的PHP 5.3.4(來自windows.php.net)沒有PEAR時接近網站和論壇帖子說它應該?
  3. go-pear.bat的這個錯誤是什麼意思?梨是否需要WAMP/XAMPP,因爲它顯然不期待IIS?

    我們在c:\ program files \ php \ php.exe下找到php.exe,它使用了一個未知的SAPI。 PE AR命令行工具尚未經過測試,如果您有CLI(或CGI)php.exe可用,我們強烈建議使用它。

+0

那麼,如果你喜歡手動操作,PEAR包也可以手動下載和提取。 – mario

+2

你可能會問,建立自己的汽車是否更好,或者只是漫步到經銷商處購買預製的汽車。除非有一些非常具體的原因(例如,你在源代碼級別製作特定的MOD),你不能使用預編譯的版本,然後使用預編譯的版本 –

+0

我傾向於同意Marc B.我開始嘗試滾動我自己的,並很快切換到使用XAMPP。 (我已經切換到WAMP,但任何一個都可以,這取決於您的需求。) – RobertB

回答

1
  1. 簡短的回答:沒有。較長的回答:除非您熟悉各種組件之間的工作和相互關係,否則使用XAMPP或WAMP可以使事情變得更容易一些。

  2. 我剛剛從windows.php.net/download/下載了VC9.5的PHP 5.3.5版本,它有一個go-pear.bat文件。不清楚你爲什麼沒有得到它。

  3. 下面是從復對PEAR.php代碼確定PHP可執行的SAPI:

    exec($php_bin.' -v', $res); 
    if(is_array($res)) { 
        if(isset($res[0]) && strpos($res[0],"(cli)")) { 
         return 'cli'; 
        } 
        if(isset($res[0]) && strpos($res[0],"cgi")) { 
         return 'cgi'; 
        } else { 
         return 'unknown'; 
        } 
    } 
    

    基本上\path\to\php.exe -v沒有返回要麼「(CLI)」或「CGI」,在第一線當它被執行時的結果。這裏是我的樣子:

    J:\>php -v 
    PHP 5.2.16 (cli) (built: Dec 15 2010 18:13:29) 
    Copyright (c) 1997-2010 The PHP Group 
    Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies 
    
    J:\> 
    

    請注意首先我的版本有點舊。這只是因爲我現在正在爲5.2兼容性測試一些東西。 5.3應該給出類似的東西。還請注意,PHP是我的路徑。

也許PHP不在你的道路上?環境變量設置不正確?有些東西阻止go-pear.php從-v選項獲得良好響應。