|
ASP和PHP的区别和优缺点
从软件的技术层面看,ASP有如下的特点:
1. 无需编译 ASP脚本集成于HTML当中,容易生成,无需编译或链接即可直接解释执行。
2. 易于生成 使用常规文本编辑器(如WINDOWS下的记事本),即可进行*.asp页面的设计。若从工作效率来考虑,不妨选用具有可视化编辑能力的Visual InterDev。
3. 独立于浏览器 用户端只要使用可解释常规HTML码的浏览器, 即可浏览ASP所设计的主页。ASP脚本是在站点服务器端执行的,用户端的浏览器不需要支持它。因此,若不通过从服务器下载来观察*.asp 主页,在浏览器端见不到正确的页面内容。
4. 面向对象 在ASP脚本中可以方便地引用系统组件和ASP的内置组件,还能通过定制 ActiveX Server Component(ActiveX服务器组件)来扩充功能。
5. 与任何ActiveX scripting 语言兼容 除了可使用VBScript 和JScript语言进行设计外,还可通过Plug-in的方式,使用由第三方所提供的其它scripting 语言。
6. 源程序码不会外漏 ASP脚本在服务器上执行,传到用户浏览器的只是ASP执行结果所生成的常规HTML码,这样可保证辛辛苦苦编写出来的程序代码不会被他人盗取。
从应用的层面看,ASP有如下的功能:
1. 处理由浏览器传送到站点服务器的表单输入。
2. 访问和编辑服务器端的数据库表。使用浏览器即可输入、更新和删除站点服务器的数据库中的数据。
3. 读写站点服务器的文件,实现访客计数器、座右铭等功能。
4. 提供广告轮播器、取得浏览器信息、URL表管理等内置功能。
5. 由cookies读写用户端的硬盘文件,以记录用户的数据。
6. 可以实现在多个主页间共享信息,以开发复杂的商务站点应用程序。
7. 使用VBScript或JScript等简易的脚本语言,结合HTML码,快速完成站点的应用程序。通过站点服务器执行脚本语言,产生或更改在客户端执行的脚本语言。
8. 扩充功能的能力强,可通过使用Visual Basic、Java、Visual C ++ 等多种程序语言制作ActiveX Server Component以满足自己的特殊需要。
PHP 是一种脚本语言,可以编写包含嵌入式代码的Web 页面,只要访问页面就能执行这些代码,并且这些代码还能生成动态的内容作为输出的一部分发送到客户机的Web 浏览器。本章描述了如何用PHP编写使用MySQL的基于We b的应用程序。有关C 与PHP 和Perl DBI API 的比较,请参阅第5章“MySQL程序设计介绍”。
本章的实例利用了样例数据库samp_db,这个实例使用了为学分保存方案而创建的表和第1章“MySQL和SQL 介绍”中为历史同盟而创建的表。虽然在写本书时PHP 4还处于?测试阶段,而当您读到本书时它可能已经发布了,但这里还是要涉及PHP 3的内容。与PHP 3兼容是PHP 4 的一个明确设计目标,因此这里所说的有关PHP 3的各个方面都可应用到PHP 4中。从PHP 3 更改到PHP 4 有一组移植注意事项。如果使用PHP 4,就应该阅读那些注释。
本章假设的环境是:PHP 与Apache Server结合使用。必须安装MySQLC 客户机库和头文件,因为建立PHP 时需要这些文件,否则PHP 不知道如何访问MySQL数据库。如果需要获得一些这样的软件,请参阅附录A“获得和安装软件”。附录中还给出了获得本章开发的实例脚本的说明,您可以直接下载这些脚本。
在UNIX 环境下,PHP 或者作为内建模块用于Apache,该模块连接到Apache 可执行的二进制程序上;或者作为独立的用于传统CGI 程序的解释程序。在Windows 环境下,虽然开发在Windows NT 环境下运行的Apache PHP 4 模块的工作正在进行之中,但是此刻的PHP只能作为一个独立程序来运行。
本章的大部分篇幅,都用来说明了在这里讨论所需要的PHP 函数。要想较全面地了解所有关于MySQL的函数,请参阅附录H“PHP API 参考”,也可以查阅PHP 手册,它描述了PHP 提供的全部函数,包括使用除MySQL以外的数据库的函数(使用MySQL时,PHP不受限制的部分仅仅只有DBI)。这个手册可以从PHP Web 站点下载: http://www.php.net/。该Web 站点也有从PHP 3移植到PHP 4的注意事项。
PHP 脚本的文件名带有扩展名,该扩展名允许Web 服务器识别文件名并执行PHP 解释程序去处理它们。如果使用了不可识别的扩展名,则PHP 脚本被当作纯文本。本章使用的扩展名为. p h p,其他通用的扩展名为.php3 和. p h t m l。有关配置Apache 来识别扩展名的说明,请参阅附录A。在机器上,如果没有掌握Apache 的安装,那么需要与系统管理员一起检查,找出可使用的适当扩展名。 |
|