欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

win7 下配置php开发环境以及phpunit、xdebug

程序员文章站 2022-05-15 15:05:46
...

首先申明一下,下述配置过程是在win7 32位 专业版下进行的操作。下面就进入主题: 配置WAMP,安装appserv: 1. 下载appserv。 AppServ 是 PHP 网页架站工具组合包,作者将一些网络上免费的架站资源重新包装成单一的安装程序,以方便初学者快速完成架站,AppS

首先申明一下,下述配置过程是在win7 32位 专业版下进行的操作。下面就进入主题:

配置WAMP,安装appserv:

1.下载appserv。AppServ 是 PHP 网页架站工具组合包,作者将一些网络上免费的架站资源重新包装成单一的安装程序,以方便初学者快速完成架站,AppServ 所包含的软件有:Apache、Apache Monitor、PHP、MySQL、phpMyAdmin等。

2.以管理员权限运行刚下载的appserv,可以选择安装在D盘,端口号默认80不要改动,此外,还需要填写主机名,邮箱等,这些根据自己的情况填写,还要设置mysql密码,设置后要记住这个密码。一路next下来,就安装好了,这个时候会在D:\AppServ\www目录下出现一些文件,这个目录下的文件就是可以在本地运行的网页,你自己编写的html网页或者php网页都要放在这个路径下,就可以通过apache服务器访问到了。这个时候,www目录里面有一个index.php的文件,在浏览器中打开,如果出现下图所示的页面,则证明appserv已安装成功。

win7 下配置php开发环境以及phpunit、xdebug

为了使网页提示我们所编写的php程序的语法错误,以便进行调试,我们现在做这样的事情:

首先编写一个有语法错误的php程序te.php,如下:

echo "hello"
echo " world";
?>

保存后,在网页运行这个php程序,如果网页出现语法错误的提示,则代表默认配置是显示语法错误的,这个时候,我们不需要做任何修改,但如果运行这个程序,网页不显示任何提示,是断网的效果的话,我们就要修改两个参数,分别如下:

display_errors=On

error_reportingE_ALL & ~E_NOTICE

保存,重启apache服务器,继续运行这个有语法错误的php程序,这个时候应该就可以提示语法错误了。


安装pear:


pear是PHP的扩展和应用程序库,包含了很多有用的类,安装好上述的appserv之后,appserv里面包含的php模块实际上并没有pear,所以我们要安装pear。安装pear有两种方法,下面分别介绍。

一、有go-pear.bat文件的情况

首先,打开你的php安装目录(我的是D:\AppServ\php5),查看该路径下有没有go-pear.bat,如果有的话,恭喜你,这时候的安装会简单一点。首先双击go-pear.bat,若出现php_mbstring.dll 找不到的提示,那么,打开C:\Windows\php.ini,找到extension=php_mbstring.dll,把这句话放到extension=php_exif.dll前面,保存。出现错误的原因是 exif 要调用 mbstring,所以 mbstring 必须在前面。但是系统的默认为什么mbstring要放在后面,怎么也想不通。

双击go-pear.bat后,

输入system,回车,

继续回车,表示全部安装。然后,

输入Y,回车,

继续回车,

这个时候pear就安装成功了,回车即可。

此时,pear安装成功了,我们现在需要告诉php我的pear安装在了哪里,所以,打开php.ini,找到如下内容:

;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;


; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"
;
; Windows: "\path1;\path2"
;include_path = ".;c:\php\includes"

将最后一行的分号去掉,并修改为自己的PEAR的安装目录,例如,我的是 include_path = ".;D:\AppServ\php5\PEAR"

这个时候,查看php的安装目录,发现又多了pear.bat和PEAR_ENV.reg。首先重启apache服务器,

然后双击PEAR_ENV.reg文件,选择“ok”,导入pear的注册信息(为什么导入现在还不是很明白)。

接下来设定环境参数,双击pear.bat文件即可,然后打开cmd,输入pear version,如果出现版本信息,表示安装成功。

再输入pear list,出现pear包的列表,phpunit需要pear的benchmark包,如果没有Benchmark ,请在命令行输入 pear install Benchmark进行安装。

安装成功后,继续输入pear list查看所安装的pear库,

出现了benchmark,ok。

pear的目录结构如下:

win7 下配置php开发环境以及phpunit、xdebug

其中默认cfg www 文件夹是空的,data docs pear 三个文件里面在每一次用pear命令安装一个软件都会在里面建立一个文件夹保存软件的数据,比如安装phpdocumentor ,那么在这三个文件夹里面都会有phpdocumentor文件夹。

现在,我们需要更新一下pear,在命令行输入pear upgrade-all,其间如果看到错误信息,多试几次,这是因为有的包对pear的版本有要求,第一遍执行完后,这时候运行pear version,可以发现pear的版本升级了,然后继续运行pear upgrade-all,还会升级之前因为版本要求不能升级的包。

直到已无可更新的内容,停止。

这个时候,因为更新了pear,所以再运行一次PEAR_ENV.reg,导入信息到注册表,防止出错。


二、没有go-pear.bat文件的情况

如果你的php安装目录下没有go-pear.bat文件,也不要紧,有些集成包就没有这个东西,这时候,点击这里

下载链接中的文件go-pear.phar,下载完成后把该文件放在php的安装目录下,然后再复制一个go-pear.phar文件,修改名称为go-pear.php,同样放在php的安装目录下。打开dos,进入php的安装根目录 运行go-pear.php,会打开go-pear.php窗口,然后关掉就可以了,然后就可以按照正常的流程来安装phpunit了。


安装phpunit:


在pear中添加频道,在php安装目录中依次执行如下命令:

pear channel-discover pear.phpunit.de
pear channel-discover components.ez.no
pear channel-discover pear.symfony-project.com

pear install --alldeps phpunit/PHPUnit (这句代表安装PHPUnit的所有元素,如果运行pear install phpunit/PHPUnit,则只安装一部分文件,之后写测试的时候很可能会报错,所以这里安装PHPUnit的所有元素。如果之前运行了pear install phpunit/PHPUnit,那么解决方法是删掉php/pear/phpunit,再执行pear install --alldeps phpunit/PHPUnit,或者执行pear clear-cache清除缓存,然后pear install -a -f phpunit/PHPUnit重新安装。))。

安装成功后,这个时候运行phpunit --version,有版本信息,表示phpunit安装成功。


至此,你就已经为你的php运行环境安装好了一个phpunit测试环境,你可以编写测试用例,并用phpunit命令来执行了。


安装Xdebug:

Xdebug是一个开放源代码PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况。接下来介绍一下怎样安装xdebug。

首先测试一下,在地址栏中输入http://localhost/phpinfo.php,查看Thread Safety字段,如果是enabled,则表示你的php是线程安全的。

Thread Safe是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。Non Thread Safe是非线程安全,在执行时不进行线程(Thread)安全检查。

上述Thread Safety=enabled 参数代表是线程安全的,那么,http://xdebug.org/download.php下载相应的线程安全的xdebug的应用程序扩展(dll),注意一定要下载对应你的php版本的xdebug版本,否则xdebug将不可用,具体涉及到以下几个方面:

(1)Thread Safe是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。Non Thread Safe是非线程安全,在执行时不进行线程(Thread)安全检查。

(2)VC6 版本是使用 Visual Studio 6 编译器编译的,如果你是在windows下使用Apache+PHP的,请选择VC6版本。

VC9 版本是使用 Visual Studio 2008 编译器编译的,如果你是在windows下使用IIS+PHP的,请选择VC9版本。

(3)Windows下的PHP 主要有两种执行方式:ISAPI 和 FastCGI。

ISAPI 执行方式是以 DLL 动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检 查,这样来提高程序的执行效率,所以如果是以 ISAPI 来执行 PHP,建议选择 Thread Safe 版本;

FastCGI 执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果 是以 FastCGI 来执行 PHP,建议选择 Non Thread Safe 版本。官方并不建议你将Non Thread Safe 应用于生产环境。


打开http://xdebug.org/download.php网址后,会看到很多版本的xdebug,

有TS后缀的是线程安全的,这时候的我应该下载有TS后缀的,并且是VC6的,并且我的php版本是5.2的,我的windows是32位的,所以我要下载php_xdebug-2.1.2-5.2-vc6.dll。大家应该根据自己的php版本和其他信息下载相应的xdebug。

将下载的文件放在 php根目录/ext中,然后打开C:\Windows\php.ini,添加如下内容:

[xdebug]

zend_extension_ts="D:\AppServ\php5\ext\php_xdebug-2.1.2-5.2-vc6.dll"
xdebug.auto_trace=on
xdebug.collect_params=on
xdebug.collect_return=on
xdebug.profiler_enable=on
xdebug.trace_output_dir="d:\xdebug"
xdebug.profiler_output_dir="d:\xdebug"
xdebug.remote_enable=on
xdebug.idekey=""
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
;xdebug.remote_port=8888
xdebug.remote_port=9000

注意
1,根据PHP 版本 下载对应的xdebug. 不要乱下 不然对应不上的. VC6 VC9, 安全模式等等 它对应很多版本的. 请执行phpinfo 后查看你的版本!!!!!这个最主要的! 
2;我上面 第一行的地址要修改.根据自己存放的值.最下面的地址是存放 记录的.可以自己随便了.

重启apache,刷新http://localhost/phpinfo.php,这时候,如果页面中出现了xdebug的配置参数,则表示xdebug安装成功。