度是极快的,但是一旦使用复杂的 PHP 框架,那么由于需要每次请求的时候初始化整个
框架,性能的下降非常厉害,你用一个很复杂的 PHP 框架的结果就是整体性能被 Ruby
远远甩开。这也是为什么 PHP 社区这么多年来,并不怎么倾向于使用框架的原因之一。
3、由于 PHP 这种每请求初始化资源的机制,也造成了 PHP 添加跨请求的高级特性相当困
难,这是 PHP 本身一个很大的限制,但是反过来说,正是这种限制使得 PHP 始终保持在
一个比较简单的 web 语言上面,而正是这一点才是 PHP 得以成为互联网第一 Web 编程语
言的原因,因此也未必就不好。
总之,PHP 和 Ruby 的差异还是很大的,不适合放在一起比较,其实应该比较的是 Ruby
和 Python 才对。
所以我觉得 Rails 这种框架性做法被 PHP 跟风以后,其实是把 PHP 带上了邪路,所以不
如说是 Rails 在误导 PHP 的发展。顺便多说一句:DHH 在编写 basecamp 之前,一直是用
PHP 的,并且自己还写了一个 PHP 的快速开发框架,他改用 ruby 以后,把当初自己写的
PHP 框架也移植过来了,这个框架实际上是 Rails 最初的原型。那么为什么 DHH 当初不直
接基于 PHP 做 Rails 呢?非要改用 ruby 以后,才发表 rails 呢?你看看 PHP 这种运行机制就
知道了,PHP 做复杂的 web 开发框架并不是一条光明的道路。