PHP VS ASP


Posted in PHP onOctober 09, 2006

PHP versus ASP
Thu, Aug 17, 2000; by John Lim.
序:
微软的ASP是一项强大的动态WEB页面技术,我已经使用了一年的ASP,用它创建了许多的WEB站点,但是现在我的公司正想转向另一项叫PHP的INTERNET技术,来进行以后的WEB站点开发。
问题是我们已经习惯于使用ASP,并且喜欢用它,为什么我们要转向PHP呢?

开放源码运动
首先,我们认识到,开源运动使我们获得了强大的技术支持和免费的代码供应。例如:在ASP中,上传文件、加密密码、发送邮件都需要第三方的商业软件的支持,是要收费的;但在PHP中,这一切是免费的!
但这还不足以说服我们转向PHP,因为我们已经投入了大量的时间和金钱在这些必需的商业软件工具上。

INTERNET程序和LINUX
我有一个梦想,我希望在将来每一个程序都是一个INTERNET程序。不用再需要购买软件包,不要再去安装它,它们能在INTERNET上得到,并且已经是安装好的,我们只要在浏览器中运行程序,这不会需要太多的配置。
大部分的网络应用程序都运行在LINUX和PHP上。它们通常不使用ASP,有一种软件叫Chilisoft ASP,它能在LINUX上运行ASP,但它是要钱的,同时它也不支持最新版的ASP,更重要的是创建高性能ASP站点所用的好的第三方DLL都不能运行在LINUX上。
于是,为了实现我们的INTERNET软件梦想,我们决定寻找一种更好的,接近于ASP的技术来替代它!

ISAPI的支持

ZEND团队正在开发的PHP核心引擎中就包括一个ISAPI引擎。
ISAPI是一种MICROSOFT的INTERNET WEBSERVER API,它的应用,使我们这些习惯于在WINDOWS下开发程序的程序员有了一条通向LINUX的捷径。

技术分析

每个人都声称自己的产品最快,这不是我真正关心的---我只关心“足够快”,对我来说,PHP足够快!
ASP支持多种程序语言。这种体系使得程序天生就带有慢和多内存占用,它的每一种语言解析就相当于一个PHP编译,(就是说,当ASP开始解析一条代码时,它相当于同时开动多个PHP),当ASP解析到一个ASP开始标记(<%)时,它需要跳出HTML解析进程而去选择另一个适当的解析进程,当它解析到一个ASP结束标记时,它又得退回到HTML解析进程。
同时,ZEND打算发布一个可以保护我们源代码的编译器,以及各种不同的优化技术(Zend Cache and Optimizer),甚至于实现PHP在WINDOWS下的良好应用,无疑,PHP在这一方面又将强于ASP!

一个使用PHP的商业决定

相对于PHP来说,这里有许多其它的开放源码选择,比如说perl,python/zope and jsp/tomact。对我来说,PHP最接近于ASP,同时也易于转换!
Perl: 一种不适用于大项目的语言.
Python/Zope:一种很好的语言,但它的体系不如PHP那般的接近ASP.
JSP/Tomcat: 我认为,比起脚本语言来,type-safe, type-bound, type-checking Java 不太好操作!

代码
我们注意到,我们用PHP开发的代码比用ASP开发的要短,这是因为,在PHP中HTTP GET和POST变量自动创建为全局变量,这样我们就不要再花费太多的时间去分析ASP REQUEST对象了。
同时PHP的include()函数非常好,我们能有条件的include代码,以使我们的代码尽量精简,更加易懂!
PHP有着相似于ASP的COOKIE和SESSION管理功能。

结论:
我现在还在使用PHP,在所有的地方使用“$”这个符号,它是非常酷的,同时它也是我最喜欢的一个符号!:)

PHP 相关文章推荐
一个目录遍历函数
Oct 09 PHP
PHP下打开URL地址的几种方法小结
May 16 PHP
PHP操作数组相关函数
Feb 03 PHP
php数组函数序列之end() - 移动数组内部指针到最后一个元素,并返回该元素的值
Oct 31 PHP
详解PHP内置访问资源的超时时间 time_out file_get_contents read_file
Jun 03 PHP
php/js获取客户端mac地址的实现代码
Jul 08 PHP
php获取目录所有文件并将结果保存到数组(实例)
Oct 25 PHP
php构造函数实例讲解
Nov 13 PHP
既简单又安全的PHP验证码 附调用方法
Jun 02 PHP
php获取服务器操作系统相关信息的方法
Oct 08 PHP
php菜单/评论数据递归分级算法的实现方法
Aug 01 PHP
Laravel 5.2 文档 数据库 ―― 起步介绍
Oct 21 PHP
用PHP来写记数器(详细介绍)
Oct 09 #PHP
杏林同学录(三)
Oct 09 #PHP
福利彩票幸运号码自动生成器
Oct 09 #PHP
一个用php3编写的简单计数器
Oct 09 #PHP
php4的session功能评述(三)
Oct 09 #PHP
php4的session功能评述(一)
Oct 09 #PHP
php4的session功能评述(二)
Oct 09 #PHP
You might like
我的论坛源代码(一)
2006/10/09 PHP
浅析php学习的路线图
2013/07/10 PHP
学习php设计模式 php实现适配器模式
2015/12/07 PHP
PHP强制转化的形式整理
2020/05/22 PHP
jQuery控制输入框只能输入数值的小例子
2013/03/20 Javascript
javascript实现原生ajax的几种方法介绍
2013/09/21 Javascript
详谈JavaScript 匿名函数及闭包
2014/11/14 Javascript
nodejs中使用多线程编程的方法实例
2015/03/24 NodeJs
AngularJS教程之简单应用程序示例
2016/08/16 Javascript
微信小程序 定义全局数据、函数复用、模版等详细介绍
2016/10/27 Javascript
微信小程序 动态传参实例详解
2017/04/27 Javascript
利用jsonp与代理服务器方案解决跨域问题
2017/09/14 Javascript
详解VUE 对element-ui中的ElTableColumn扩展
2018/03/28 Javascript
JavaScript原型对象原理与应用分析
2018/12/27 Javascript
node.js ws模块搭建websocket服务端的方法示例
2019/04/25 Javascript
[33:42]LGD vs OG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
使用Python脚本对Linux服务器进行监控的教程
2015/04/02 Python
Python导入oracle数据的方法
2015/07/10 Python
python 网络爬虫初级实现代码
2016/02/27 Python
Python有序字典简单实现方法示例
2017/09/28 Python
django 解决manage.py migrate无效的问题
2018/05/27 Python
对python requests发送json格式数据的实例详解
2018/12/19 Python
人工神经网络算法知识点总结
2019/06/11 Python
Python 中Django安装和使用教程详解
2019/07/03 Python
python word转pdf代码实例
2019/08/16 Python
Pytorch 多块GPU的使用详解
2019/12/31 Python
python编写扎金花小程序的实例代码
2021/02/23 Python
幼儿园教师请假制度
2014/01/16 职场文书
模范家庭事迹材料
2014/02/10 职场文书
大一新生学期自我评价
2014/04/09 职场文书
初中班级口号
2014/06/09 职场文书
中文专业自荐书
2014/06/29 职场文书
2014年体检中心工作总结
2014/12/23 职场文书
同事打架检讨书
2015/05/06 职场文书
大学生学生会工作总结2015
2015/05/26 职场文书
你喜欢篮球吗?Python实现篮球游戏
2021/06/11 Python