### PHP 比 ASP 优秀的七个理由

ASP 是微软公司实现动态网页的一种技术。ASP 支持一些脚本语言，主要以 VBScripp 为主。与 ASP 相比较，你还可以选择另一中开放源代码编程语言——PHP，PHP 可以运行在多种操作系统下，其中包括 Linux 和 windows。
虽然 ASP 是一种不错的技术，但从长远考虑我相信 PHP 在将来的技术领域里会有不凡的表现。
我认为有七个理由可以说明 PHP 比 ASP 更优秀：
1、速度、速度、速度
当我第一次运行 PHP 脚本程序时，我不禁对自己说：“太快了”，当时我是在仪态 166MHZ 的机器上运行我的程序的，但运行的速度仍然很快。
ASP 是永远也不会象 PHP 这样快的，因为 ASP 是建立在 COM 体系结构之上的。当用 VBScript 写 ASP 脚本时，实际上实在使用 COM 的对象，当向用户浏览器发送信息时，它用的是 Response 对象的 write 方法，当它访问数据库和文件系统的时候，它用的是其他的 COM 对象。这些 COM 对象的使用使运行速度下降。
在 PHP 代码中，所有的工作都运行在 PHP 的内存空间中，也就是说 PHP 不是基于 COM 对象的，所以的他的运行速度会快一些。
下面是我们在 MSSQL7 ４０次运行一个查询语句的执行时间统计：
PHP Querying MSSQL7 时间（秒）
用 MSSQL extension 01.88
用 ODBC extension 09.54
用 ODBC via COM (ADO) 17.28
用 OLEDB via COM 06.19
当我们使用 PHP.ODBC,访问数据库用了 9.54 秒，而用 COM 接口去连接数据库需要比 PHP 所用的时间高 80%。
OLEDB 是微软的一种高速访问数据库的技术，他比 ODBC 要快。但当我们所 PHP 和 OLEDB 的效率实验时，结果是 PHP 的整体性能比 OLEDB 高 200%，如此的出一个结论，如果不采用 COM 可以获得较快的执行速度。
当然 PHP 的执行速度还不是最快的，但我们才刚刚开始起步，我们会逐步的完善他，而且 PHP 是一种开放源代码编程语言，世界上许多程序员在不断的完善他的技术，相信他一定会比非开放源代码系统获得更高的执行速度的。
２、高级内存管理
在 IIS4 下，一个 ASP 脚本 header.asp，如果被２０个页面所包含，那么运行的时候，在内存当中会保留这２０个 header.asp 的编译副本，IIS5 解决了这个问题，但只有 windows2000 才支持 IIS5，由于这种 IIS5 的不能向下兼容的原因，许多服务器仍然要使用 IIS4 下的低级的内存管理。
而在 PHP 中，不会存在这种问题，只有当 require 时，才会调用某个 include 文件。
３、没有后顾之忧
我非常憎恨的一件事情就是会买到一件不放心的产品，比如当你买了一辆汽车，但由于发动机是坏的，你需要更换他；当你买了一栋房子的时候，你要去修补漏雨的屋顶。
那么 ASP 旧乡这些产品一样，当你买了 ASP 之后，如果你需要加密技术，你就要买 ASPEncrypt；当你需要 Email 管理时，你就要买 ServerObjets Qmail；当你需要文件上传时，你还要买 Artisans SA-FileUp.
４、MySQL 使 PHP 更精彩
PHP 与 MySQL 的组合既简单又精彩。PHP 有许多管理和维护 MySQL 的工具，对 MySQk 的支持是最全面的。许多有用的函数如 mysql_insert_id 和 mysql_affected_rows 等，其他的数据库则没有。
ASP 和 PHP 都是中型网站的较理想的解决方案，但 PHP 与 MySQL 的紧密结合使 PHP 更加优越。
MySQL 的虚度比 Microsoft Access 速度快，Mssql 和 Oracle 速度比 MySQL 要快，可是费用较高。
５、Java 和 C++的变成风格
这个优点只是一个看法。
我知道你不会相信一个 Visual Basic 程序员会因为 PHP 有 Java 和 C++的编程风格而转向使用 PHP，但你会相信有许多人还是喜欢 Java 和 C++的，PHP 是一种具有这两种语言的编程风格的较容易学习的语言。
PHP 支持结构化编程，在 VB 因为他的继承性使用类还是较少的。而 PHP 的象 Java 和 C++一样的继承性使一个大型的程序中到处都充满了类的影子。
６、Bug 的处理。
你是否曾经要求 Microsoft 修改 ASP 的一些 Bug 呢？如果你不是一个象 Boeing 一样的组织，你无法获得迅速而恰当的修改，把么当你遇到 Bug 而停止工作时，如果这个 Bug 不修改，你将无法继续你的工作的。
PHP，当你发现 Bug 时，你可以修改他，如果你没有专家的水平，你可以请专家修改，并且你的修改会得到开放代码组织的接受和认可。
７、移植性
Microsoft 经常修改 ASP，下一版本叫 ASP+，现在已经开始测试。我相信他们会修改许多我曾经提到过的问题。但也无庸质疑的，Microsoft 会将你限制在他们的产品范围之内的。
我曾经是一个苹果机的程序员，当 windows95 问世后，我开始转变，但许多原来的代码都无法在 windows95 下运行，这些代码现在被放在一边，我非常的遗憾。所以我不希望在 windows 下再出现这样的悲剧。
不要忘记 Novell 曾经也象 Microsoft 的网络操作系统一样热及一时，但现在已经没有许多人用了，那么 Microsoft 也会这样的。
我找到了 PHP，我仍旧在 windows 下工作，但我知道 PHP 代码可以运行在 Solaris、Linux 和许多其他的操作系统中，我的心里感到安慰。