本贴子使用的环境 为: win7 32 php version 5.2.17 thread safe apache 2.2 zend eclipse pdt studio web debugger 之前一直是搞j2ee的,最近公司要用到php,想自己搭下php的开发环境,怎耐周围没有熟悉的人。。。 只能自己动手丰衣足食,其中遇到不少困难
本贴子使用的环境 为: win7 32 + php version 5.2.17 thread safe +apache 2.2 + zend eclipse pdt +studio web debugger
之前一直是搞j2ee的,最近公司要用到php,想自己搭下php的开发环境,怎耐周围没有熟悉的人。。。
只能自己动手丰衣足食,其中遇到不少困难,于是心想这php不是最流行的web开发语言么,怎么配置起来
这么困难,本人认为最困难的是eclipse +xdebug +zend debugger +php它们都有n个版本,能组合上统一的
版本是多么的困难,尽管网上有n多教程,但看了之后发现和自己装的都不一样。
于是乎决定如果弄好这个环境一个一定要自己写一个贴子,分享给大家。
http://blog.csdn.net/gaochh01/article/details/6949178
这里我们重点讲eclipse的debug调式环境
1.首先下载eclipsepdt,这里有一个集成了所有php需要的组件的下载地址,有了它, 你就不用麻烦的去下eclipse又去找对应的php插件了,
它集成了所有php所要用的插件,具体请看下面的链接
http://www.zend.com/en/community/pdt/downloads
找到windows 版本的下载tab页,你需要下载 1. zend eclipse pdt pdt 3.0.2 w/eclipse indigo
2.studio web debugger
分别解压 eclipse-php-3.0.2.v20120511142-win32.zip
和 zenddebugger-20110410-cygwin_nt-i386.zip
你会发现 zenddebugger-20110410-cygwin_nt-i386 下有n个文件夹,4_3_x_comp,4_4_x_comp。。。。。,这要选
哪一个是好呢? 别急,首先我们安装的是php version 5.2.17 thread safe 版本的php,所以我们选择5_2_x_comp 文件夹里的
内容,你要问了5_2_x_nts_comp 这个是作什么的, 我来给你讲一下他们的区别
5_2_x_comp 是针对 thread safe版本的php
5_2_x_nts_comp 是针对 non -thread - safe版本的php,因为我们装的是 php version 5.2.17 thread safe,所以我们使用5_2_x_comp
打开5_2_x_comp 里面有一个 zenddebugger.dll文件
1).copy zenddebugger.dll 到 [your php path]/ext/ 例如我的路径为:c:\web\php\ext
2).打开 php.ini文件 在最后加上
[zend debugger]
zend_extension_ts=c:\web\php\ext\zenddebugger.dll;同样注意ts和完整的路径。这里写你自己的php安装路径
zend_debugger.allow_hosts=127.0.0.1;允许调试的主机ip,
zend_debugger.expose_remotely=always;
3).打开apache /conf/httpd.conf文件,在356行左右加入
alias /pdt/ d:/workspace3.3_php/
options indexes followsymlinks multiviews
allowoverride all
order deny,allow
allow from all
你又要问了 这是干什么?
其中d:/workspace3.3_php/ 是你eclipse的工作目录 ,大概意思就是如果你请pdt它会给你转到 d:/workspace3.3_php/,可能不太准确
但意思差不多
重启apache后,你就可以直接通过 http://localhost/pdt/去直接访问eclipse工程中的d:/workspace3.3_php/ 文件了,这会在之后用到
4).copy c:\web\php pdt\zenddebugger-20110410-cygwin_nt-i386 中的 dummy.php到 appache /conf/htdocs 文件夹内
重启 apache 服务
如果你在phpinfo()中看到
zend debugger
passive mode timeout 20 seconds
directivelocal valuemaster value
zend_debugger.allow_hosts 127.0.0.1 127.0.0.1
zend_debugger.allow_tunnel no value no value
zend_debugger.deny_hosts no value no value
zend_debugger.expose_remotely always always
zend_debugger.httpd_uid -1 -1
zend_debugger.max_msg_size 2097152 2097152
zend_debugger.tunnel_max_port 65535 65535
zend_debugger.tunnel_min_port 1024 1024
那么恭喜你,已经成功一半了
,接下来我们打开eclipse pdt,当然我们的workspace是之前apache httpd.conf 配置中的d:/workspace3.3_php/
1). windows ----> preference ---> php----->php executables ----------->add
name : test 此项随意
exceutable path: c:\web\php\php.exe 你自己的php安装路径
php ini file :c:\web\php\php.ini 你自己的php安装路径
sapi type: cli
php debugger: zend debugger
然后确认保存
2).windows ----> preference ---> php---------> php servers
name : default php web server 随意
base url: http://127.0.0.1
local web root: 空
然后确认保存
3). windows ----> preference ---> php------------->debug
php debugger : zend debugger
server: default php web server(2中配置的)
php excutable:test (1 中配置的)
4).enable cli debug 前面勾打上
然后确认保存
5).新建一个php工程 name:test
新建一个php文件 new.php
输入:
6):点击debug configuration ----------->php web application
双击新建一个configration name :随意
server
debugger: zend debugger
php server : default php web server (之前步骤中创建的)
file : 选中 /test/new.php
url 下 auto generate 前面的勾去掉
url: http://127.0.0.1/ /pdt/test/new.php这处注意修改
你又要问了 为什么要加pdt ,因为我们之前在apache /conf/httpd.conf
alias /pdt/ d:/workspace3.3_php/
options indexes followsymlinks multiviews
allowoverride all
order deny,allow
allow from all
如果不加pdt 默认请求的是c:\web\apache\htdocs目录下的文件,就会提示找不到
/test/new.php,这样你知道为什么要加ptd 了吧
然后点击debug,你就可以像调试java一样在new.php中打断点进行调试了