这本书对PHP和PHP中使用的模式讲解得挺不错。至于设计模式,不管是在JAVA,还是在C#,甚至于Perl和Python等面向对象的语言中都有深刻的应用。这里不做深入的笔记。主要记录一些在环境的实践中遇到的一些问题(主要是第四部分实践中)。
在最新的PHP中,已经建议使用PECL来安装PHP应用程序扩展包。不过书中主要还是使用PEAR。我也没有深入的研究PECL,还是沿着书中的PEAR来安装吧(好多东西还没有提供PECL的扩展安装包)。
由于单位需要使用代理,在配置DOS代理的时候遇到了小小的曲折。使用了直接设置http_proxy环境变量,也尝试了使用netsh winhttp的set proxy来环境变量。但不管使用哪种,如果你的代理是使用了用户验证的。记得你的密码中最好不要包含DOS下的转义字符,如%,^等。因为我开始包含了,怎么也连接不上网。后来取消了这些字符。一路成功。密码中最好也别包含@符号,因为这个是设置带用户验证时分隔用户名密码和代理服务器的分隔符号。
安装phpDocumentor,使用pear install安装的版本是1.4.2,最新的版本号是2.7.x了。已经移到GITHUB上了,所以需要下载安装。并且参数也变更了不少。所以如果没有追求新软件的爱好,还是使用pear安装吧。
安装PHPUnit,书中说直接使用pear install phpunit就可以,其实phpunit包含了好多东西,新版本的phpunit安装需要使用pear install phpunit/PHPUnit这样来安装了。
在做PHPUnit测试时,记得类名和文件名的大小写一定要匹配。比如类名叫User,那么文件名必须是User.php,测试类是UserTest.php。TestCase.php的位置直接放置到了PHPUnit目录下。我当时写的时候文件名全是小写。一运行phpunit怎么也找不到测试类。没有执行方法。参看了官方文档才发现自己是文件名错误引起的。(全是小写)
作者写书时,phpUnderControl还是phpUnit下的一个beta项目,现在已经无法使用pear安装了,根据最新的资料,它已经移到了git上。网址是 http://phpundercontrol.org。使用pear安装,命令是:
pear channel-discover components.ez.no
pear channel-discover pear.phpundercontrol.org
pear install --alldeps phpuc/phpUnderControl-beta
在最新的PHP中,已经建议使用PECL来安装PHP应用程序扩展包。不过书中主要还是使用PEAR。我也没有深入的研究PECL,还是沿着书中的PEAR来安装吧(好多东西还没有提供PECL的扩展安装包)。
由于单位需要使用代理,在配置DOS代理的时候遇到了小小的曲折。使用了直接设置http_proxy环境变量,也尝试了使用netsh winhttp的set proxy来环境变量。但不管使用哪种,如果你的代理是使用了用户验证的。记得你的密码中最好不要包含DOS下的转义字符,如%,^等。因为我开始包含了,怎么也连接不上网。后来取消了这些字符。一路成功。密码中最好也别包含@符号,因为这个是设置带用户验证时分隔用户名密码和代理服务器的分隔符号。
安装phpDocumentor,使用pear install安装的版本是1.4.2,最新的版本号是2.7.x了。已经移到GITHUB上了,所以需要下载安装。并且参数也变更了不少。所以如果没有追求新软件的爱好,还是使用pear安装吧。
安装PHPUnit,书中说直接使用pear install phpunit就可以,其实phpunit包含了好多东西,新版本的phpunit安装需要使用pear install phpunit/PHPUnit这样来安装了。
在做PHPUnit测试时,记得类名和文件名的大小写一定要匹配。比如类名叫User,那么文件名必须是User.php,测试类是UserTest.php。TestCase.php的位置直接放置到了PHPUnit目录下。我当时写的时候文件名全是小写。一运行phpunit怎么也找不到测试类。没有执行方法。参看了官方文档才发现自己是文件名错误引起的。(全是小写)
作者写书时,phpUnderControl还是phpUnit下的一个beta项目,现在已经无法使用pear安装了,根据最新的资料,它已经移到了git上。网址是 http://phpundercontrol.org。使用pear安装,命令是:
pear channel-discover components.ez.no
pear channel-discover pear.phpundercontrol.org
pear install --alldeps phpuc/phpUnderControl-beta