什么是ASP?
ASP即Active Server Page的缩写。它是一种包含了使用VB Script或Jscript脚本程序代码的网页。当浏览器浏览ASP网页时, Web服务器就会根据请求生成相应的HTML代码然后再返回给浏览器,这样浏览器端看到的 就是动态生成的网页。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互。是一种简单、方便的编程工具。在了解了VBSCRIPT的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的ASP系统。ASP的网页文件的格式是.ASP。
什么是PHP?
PHP是一种服务器端HTML-嵌入式脚本描述语言。 其最强大和最重要的特征是其数据库集成层,使用它完成一个含有数据库功能的网页是不可置信的简单。在HTML文件中, PHP脚本程序(语法类似于Perl或者c语言)可以使用特别的PHP标签进行引用, 这样网页制作者也不必完全依赖HTML生成网页了。由于PHP是在服务器端执行的, 客户端是看不到PHP代码的。 PHP可以完成任何CGI脚本可以完成的任务,但它的功能的发挥取决于它和各种数据库的兼容性。 PHP除了可以使用HTTP进行通信,也可以使用IMAP, SNMP, NNTP, POP3协议。
1)写HTML
asp: Response.Write(str)
php: print $str;
echo $str;
print_r $debug_str;
2) Form, Cookie and QueryString变量
asp: 可以用Request object.
php: 这些变量是自动提供的作为一个全局变量,如果在PHP.ini文件中这样配置的话:
variables_order="EGPCS"
register_globals=On
为了安全,我将不允许register_globals (设置它为OFF). 然后变量仅仅在数组中使用:
$HTTP_POST_VARS, $HTTP_COOKIE_VARS and $HTTP_GET_VARS.
3)Redirecting to another location
asp: Response.Redirect(url)
php: Header("Location: $url");
4) Cookie 处理
asp: Response.Cookies(cookiename) = newval
avar = Request.Cookies(cookiename)
php: setcookie($cookiename, $newval);
$avar = $HTTP_COOKIE_VARS[$cookiename];
5)Application变量
asp: Application(appvarname)
php: 不提供,可以用数据库模拟
6)Session 变量
asp: Session(sessionname) = newval
avar = Session(sessionname)
php: 在PHP4或以后的版本中, 我们确定变量作为一个session在
session_register($sessionname), 然后,我们调用session_start( )
在开始使用的.php 页恢复session变量值.
例如:
session_register("avar");
$avar = 99;
session_start();
print $avar;
7)Form 变量
asp: Request.Form("formvar")
Request.QueryString("getvar")
php: $HTTP_POST_VARS["formvar"];
$HTTP_GET_VARS["getvar"];
GET and POST 变量可以交替的自动地修改到PHP变量,这是不安全的方法。
8)Server 变量
asp: 这有许多服务器变量,可以看ASP文档. 一个例子:
Request.ServerVariables("HTTP_HOST
php: 作为ISAPI模式, 服务器变量存储在$HTTP_SERVER_VARS数组里。
作为CGI, 它们存贮在环境变量里, 用$HTTP_ENV_VARS数组或getenv( )
可以得到。一个例子:
$HTTP_SERVER_VARS["HTTP_HOST"] using ISAPI module
$HTTP_ENV_VARS["HTTP_HOST"] using CGI module
9)数据库访问
asp: 一般用ado技术
php: ADO可以使用adodb库来模拟,这个库等价与ado.
限制是,目前支持只读性光标和前滚光标.
(注解)也可以直接调用com库。
10)Buffering
asp: Response.Buffer = true
Response.Write("abc");
Response.Flush()
php: ob_start();
print "abc";
ob_end_flush();
11) Script Timeout
asp: 时间级是秒级:
Server.ScriptTimeout(240)
php: 时间级是秒级:
set_time_limit(240);