Web

Windows平台下Apache+PHP4+PHP5+FastCGI安装笔记

修正:2010.3

1.PHP自5.3版起默认不在支持针对Windows的VC6编译版本,只提供VC9版本的,而APAche官方提供的Apache Windows编译包都是VC6的。所以我们需要使用第三方编译的VC9版本的Apache。 2.PHP 的 None Thread Safe 版本适用于CGI/FastCGI方式,而相应的Thread Safe版本适用于SAPI和Mod方式 3. http://www.apachelounge.com/download/ 这里提供了大量适用于Windows的LAMP有关预编译包,包括VC9版本的Apache和FastCGI,这个网站也是PHP官方推荐的网站。

原文

Go PHP5

很多开发组织已经开始参与到 Go PHP5 的活动中来了,PHP官方也早已经声明于2007年底停止对PHP4的所有技术支持,看来PHP5/6的广泛应用已经是不可抗拒的浪潮了,仅仅是时间问题,而且时间不会太长。

Apache+PHP+FastCGI

对于目前的过渡阶段,很多开发者还是需要一个可以实现PHP4和PHP5共存的开发环境,这两天尝试在Windows下使用APACHE环境配置了一个PHP4和PHP5共存的环境,请注意:此配置使用 CGI 运行方式,而没有使用常见的 Apache modules 方式。我曾经尝试使用 Apache modules方式配置双PHP,但没有成功。 关键特性:
  1. Windows+Apache+PHP(Apache2.0下测试)
  2. PHP4+PHP5共存
  3. FastCGI
以下是配置中用到的Apache Conf: (更多…)

Emeric lee
Web

PHP框架基准测试比较

这篇文章是一个翻译,英文原文在 PHP framework comparison benchmarks,我的英文水平很一般,可能会有翻译不确切的地方(把握不大地方使用斜体进行了标志,并附带了英文原文),请指正,并参看原文。 Emeric.Lee 2008.10.18
为了讨论我在另一篇文章(重新审视PHP框架 CodeIgniter VS Zend)中作出的关于PHP框架性能的比较,我决定公开我所取得的详细结果。我一开始没有公开这个测试结果是因为测试不是在完全隔离的条件下进行的(独立的客户端和服务器),但是每个测试结果应该是准确的,这也是我测试的目的。 另外,我仅仅使用了‘请求数/秒' 作为性能的衡量标准,我不认为在实际应用中还有其它的因素可以更好的衡量WEB应用程序的相应速度。

工具

测试计算机有1.8G的AMD Sempron CPU,521M 内存,运行Ubuntu Gutsy (7.10) Desktop 操作系统。 我使用 httperf 运行测试,另外也使用apachebench 进行了一些重复测试,测试结果是吻合的。 我使用CakePHP, CodeIgniter, Zend Framework 和Ruby on Rails.分别建立了一个相同的首页,而且我还是用静态HTML和过程化的PHP代码(又称为套管程序)复制实现了相同的功能,以此作为测试基准。 我决定在测试中包含数据访问,测试中应用程序从数据库中提取了4条记录并生成结果页面。 有兴趣的人可以下载测试文件,包括Mysql数据库的SQL文件。测试代码假设数据库有Root用户并且没有密码(如果你准备自己运行测试,也许需要修改相关部分代码)。

测试结果

(更多…)

Emeric lee
Web

重新审视PHP框架 CodeIgniter VS Zend

这篇文章是一个翻译,英文原文在 PHP frameworks revisited - CodeIgniter vs Zend,我的英文水平很一般,可能会有翻译不确切的地方(把握不大地方使用斜体进行了标志,并附带了英文原文),请指正,并参看原文。 Emeric.Lee 2008.10.17
我们计划从头开始一个新项目,为此评估了一些PHP框架。我们的备选列表有CakePHP , CodeIgniter , Symfony和Zend 。 我们分别使用这4种框架编写了一个相同的小应用(一个简单的Wiki应用),希望我们能尽快选定一个最合适的。 声明:我会努力确保自己的客观性,虽然我是一个ColdeIginter的爱好者。我所工作的公司是Zend的合伙人(我们已经使用了Zend Platform 和 Zend Studio)。I can’t help factoring that in(更多…)

Emeric lee
Web

设计模式学习总结(笔记)

我是那种非科班出身的程序员,很少完整阅读成本的技术类书籍,感觉很多书的内容都有太多罗嗦的地方。但是最近看到一本书《Guide to PHP Design Patterns》(中文名<PHP实际模式指南>)让我重温了久违的阅读享受。

这是一本系统介绍设计模式在PHP编程中应用的书,基本回答了两个问题:1、什么是设计模式,2、有哪些常用设计模式;还有一个附加问题:常用设计模式在 PHP中的具体实现。全书语言流畅,用例明晰,虽然看完后你会发现有一些设计模式其实你早已经无意识的使用了,但是它仍然会让你有顿悟的体会。

围绕这本书,我用了3天的时间研究了一下关于设计模式的一些概念,最后又用了2天来总结,就有了这篇文章。总结的主要目的是让自己更深刻的理解设计模式,也可以说是个全面一点的学习笔记,文字力求通俗,避免概念陷阱。

很多文字写的可能有点武断、大胆。肯定也会有些错误的认识,等到有更深刻的理解时再来完善把!

1 关于设计模式

设计模式可以理解为对开发中常见问题/需求的解决方案的高度抽象,这些问题/需求有具体的细节的,也有全局的结构性的。

在层次上,它应该是一个介于代码库和设计指导思想之间的一个东西,比代码库要抽象地多,比指导思想原则又要具体的多。

个人认为对于设计模式的学习应该是这样的一个目的,即“知道这件事情原来可以这样解决”,而不是“这件事情应该这样解决”。似乎还可以应验了“无招胜有招”这句经典武侠用语,你应该学习、理解这些设计模式,然后忘掉这些乱七八糟的东西。

当然,这些也许都是我无知无畏的狂妄。

(更多…)

Emeric lee
深入PHP

phpbb plus1.52中的一个BUG

昨天突然发现我用phpbb plus1.52的建的一个论坛出错了,表现为不管是前台还是后打开后都是一片空白。尝试查找原因> 首先再config.php中添加如下两行代码,强制显示错误资料,结果出了一堆的notice但没看到任何error,而正常页面还是没有输出。 error_reporting(E_ALL); ini_set('display_errors',1); (更多…)

Emeric lee