Eclipse PHP開發環境的搭建
由於最近要用php做開發,準備搭建環境事宜,在網上找了很久也沒找到特別全面的辦法,自己結合自身還有網上提供的一些方法寫了這一篇文章
1、軟體準備
MySQL:下載地址:http://www.mysql.com/downloads/mysql/,我的版本是mysql-essential-5.1.55-win32.msi,
Apache:下載地址:http://httpd.apache.org/download.cgi#apache22,我的版本是httpd-2.2.22-win32-x86-no_ssl.msi
PHP:下載地址:http://windows.php.net/download/,我的版本是php-5.2.17-Win32-VC6-x86.zip,注意:vc6是支援apache伺服器的,vc9是支援IIS的,同時它還分安全執行緒版本和非安全執行緒版本,在安裝zenddebugger的適合要選擇對應版本,設定檔也要對應起來,我的版本是php-5.2.17-Win32-VC6-x86.zip,不要用那個installer版本的安裝檔案包(用這個的話很多php擴充都沒有安裝,比如php的mysql擴充,導致不能串連mysql資料庫)
Zend Debugger:http://downloads.zend.com/pdt/server-debugger/或者是http://www.zend.com/en/products/studio/downloads選擇Studio Web Debugger,我的版本是前面這個連結下的ZendDebugger-5.2.15-cygwin_nt-i386.zip
Eclipse for PHP:http://www.eclipse.org/downloads/packages/release/galileo/sr2,注意下載galileo版本的,Helios版本的在配置server的時候有問題和Indigo目前沒這個版本,我的版本為eclipse-php-galileo-SR2-win32.zip,工作空間為:D:/myWorkspaces/phpWorkspace。安裝完後,對Eclipse作一些基本的配置。如果要使開發的應用能有更好的國際化支援,能夠最大程度的支援中文輸出,則最好使使用UTF-8編碼。
2、安裝配置
依次安裝好apache,mysql和將PHP的zip包解壓。具體mysql的配置請自行參照其他文獻,這個資料很全。
2.1配置Apache載入PHP模組
conf/httpd.conf,在尾部添加下列內容,表示載入php模組。
#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALLPHPIniDir "D:/Program Files/PHP/"LoadModule php5_module "D:/Program Files/PHP/php5apache2_2.dll"AddType application/x-httpd-php .php #END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
?這裡注意一下,如果你的apache是2.0版的你就填寫LoadModule php5_module "D:/php/php5apache2.dll"。
?
在apache文檔目錄下(預設為apache安裝目錄/htdocs)建立一個檔案index.php 輸入以下內容
?
重啟apache
在瀏覽器中輸入http://localhost/index.php會出現PHP版本資訊,說明PHP和apache已經搭建成功
2.2添加虛擬目錄和預設首頁
預設網站主目錄為Apache的htdocs目錄。由於要在D:/myWorkspaces/phpWorkspace下放置所有的Eclipse工程,因此為了能夠訪問到各個工程下面的php檔案,需要建立一個虛擬目錄指向eclipse工程所在目錄。修改httpd.conf,在檔案結尾添加:
Alias /workspace/ "D:/myWorkspaces/phpWorkspace/" Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all
?這樣做的好處是,所有php工程都共用一個apache配置,通過http://localhost/Workspace/項目目錄,即可訪問相應工程下面的php檔案。
2.3PHP配置
(1)把D:/php下的php.ini-recommended,改名為php.ini。
(2)設定下面的項目:
zend.ze1_compatibility_mode = Off //是否支援PHP4,最好關閉它,否則用PHP5處理Zip檔案會出錯 post_max_size = 20M //POST資訊最大容量 magic_quotes_gpc = Off //是否使用魔法引號 extension_dir = "D:/PHP/ext" //PHP擴充 upload_max_filesize = 20M //上傳檔案大小 max_execution_time = 6000 //頁面最大執行時間(秒) max_input_time = 600 //指令碼解析時間上限(秒) memory_limit = 20M //指令碼分配最大記憶體 output_buffering = On //是否開啟輸出緩衝區 implicit_flush = On //及時輸出緩衝區內容
(3)開啟出錯訊息提示:為了在開發時能更好地進行調試,開啟php.ini中的display_errors和display_startup_errors變數。display_errors 變數的目的很明顯,它告訴PHP是否顯示錯誤。另外,變數error_reporting 的預設值是 E_ALL。這個設定會顯示從不良編碼實踐到無害提示到出錯的所有資訊。E_ALL 對於開發過程來說有點太細,因為它在螢幕上為一些小事(例如變數未初始化)也顯示提示,會搞糟瀏覽器的輸出。如果只想看到錯誤和不良編碼實踐,但是不想看到無害的提示,可設成以下值:
error_reporting = E_ALL & ~E_NOTICE
?(4)找到Dynamic Extensions項,這裡是PHP擴充設定部分,啟用下列常用擴充(去掉以下幾項前面的“;”)。
extension=php_bz2.dll extension=php_curl.dll extension=php_dba.dll extension=php_dbase.dll extension=php_gd2.dll extension=php_imap.dll extension=php_ldap.dll extension=php_mbstring.dll extension=php_mime_magic.dll extension=php_mysql.dll //MySQL擴充 extension=php_mysqli.dll extension=php_pdo.dll //PDO擴充 extension=php_pdo_mysql.dll //PDO_MySQL擴充 extension=php_sockets.dll extension=php_xmlrpc.dll extension=php_xsl.dll extension=php_zip.dll
?(5)解壓出Zend Debugger,把與PHP版本相對應的ZendDebugger.dll拷貝到PHP安裝目錄下,修改php.ini,添加以下內容,注意nts指的是非安全執行緒:
[zend] zend_extension_ts=D:/Program Files/PHP/ZendDebugger.dll zend_debugger.allow_hosts=127.0.0.1 zend_debugger.expose_remotely=always
?把解壓出來的dummy.php放到httpd DocumentRoot目錄以及D:/php_workspace/下,用於在Eclipse裡測試Debugger是否連通(Debug Configurations->PHP Web Page->Test Debugger),成功會出來一個success message。(通過修改worksapce的對應網站目錄,Configure "Default PHP Web Server",也可以放到網站的子目錄下)。
(6)這一步不是必須的:為防止以後出問題,把PHP下的php5ts.dll、libmysql.dll、以及ext/php_mysql.dll、ext/php_mysqli.dll(如果使用了這個擴充)三個檔案拷貝到Windows/system32下。注意很多時候出現一些與代碼無關的很難解決的問題時,十之八九就是因為擴充沒有正確載入的原因(即使php.ini中的extension_dir指向了ext目錄),這主要是因為PHP模組由Apache來載入,這是兩個不同的軟體,經常會出現一些協作上的問題。這時就要把你使用到的擴充從ext下拷貝到system32下。
2.4Eclipse配置
2.4.1配置Eclipse指向PHP模組
開啟Eclipse的Window->Preferences->PHP->PHP Executables->Add,
2.4.2配置Eclipse中的php檔案訪問URL:
開啟Window->Preferences->PHP->PHP Server,編輯Default PHP Web Server條目
注意URL欄中添加了workspace,這個是在httpd.conf中添加的目錄別名。
2.4.3配置debug
PHP Debug,如所示,選擇合適的Debugger,Server
至此,配置完成。
記得重新啟動Apache。
2.5測試
配置完後重啟apache,然後建立一個PHP Project命名叫FirstPHPTest, 當然使用的是我們的D:/php_workspace作為Eclipse的workspace目錄。在工程中建立PHP File, 比如使用的phpinfo.php。內容為
?當在index.php上右鍵 Run As->PHP Web Page時就可以看到類似如下畫面了: