PHP与ASP.NET比较的浅析
南三方
PHP与ASP.NET比较的各个方面是什么呢?PHP与ASP.NET比较的必要性是什么呢?那么本文就给你一个答案。
PHP与ASP.NET比较的前言,不管你是不是已经选择了PHP,根据它在如下表格中在价格、速度、效率、安全性、平台支持性和开源与否上的表现,我们都能判断出它的强项是远胜于弱点的。唯一不足的是缺少面向对象的支持。然而,这是个相对次要的缺陷,虽然不可忽视语言的结构,可是最终来说,优秀的编码还是归结于反复实践、执行、好习惯和纪律。
◆PHP与ASP.NET比较之价格:
我不会单纯考量首次投资的价格,拿PHP来说,显然是免费的,但我们也要考虑开发、维护和调试的成本,你可能还要购买Zend优化引擎。对于ASP,你在一开始就要投资购买产品,而且你还会在额外的技术上开销,比如购买图形处理的类库,或是其它。但从长远来看,PHP不会要求你去缴纳升级费用或是购买更多的license。任何曾经接触过license的人都会知道公司往往会在确保产品的兼容性上花费大量时间和金钱。此外,发现bug并得到修复的反馈处理情况也不尽相同,这其实也可换算为时间的消耗,进而影响到整个开发的成本。
◆PHP与ASP.NET比较之速度和效率:
就像我前面所提到的,ASP.NET是一个允许你使用多种不同编程语言的框架。此外,它还号称拥有出色的面向对象编程模型。确实如此,可是这却带来了速度上的降低。谈到它的这些优点,对于相同功能的页面来说,比起PHP, 运行于ASP的页面需要其服务器分析、执行更多的代码。而PHP是“快餐型”的解决方案,先将功能搞定,还有很多健壮性上的问题可以留到2.0或是3.0里进行补充,而且它的核心代码得到编译的优化,程序可以高速运行。速度并非唯一的考量,内存的耗用也很重要。
◆PHP与ASP.NET比较之安全性:
ASP.NET运行于IIS之上,这是个曾无数次遭受攻击的系统,几乎每周IT的新闻上都会有类似消息。实际上,它已成为一项负债,不管整个市场投了多少美元在上面,很多IT的专业人士已经拒绝将他们的网络暴露于IIS Web服务器之下。而PHP与Apache工作在一起,它拥有良好的速度、可靠性的表现,还有过硬的安全性。
◆PHP与ASP.NET比较之平台支持性:
ASP.NET起初运行于IIS,现在也可以运行于Apache,而Apache能运行于所有平台。PHP天生就是设计运行于Apache上,所以你有很多被证明是可靠的平台去选择。
◆PHP与ASP.NET比较之开源与否:
开源并非只是那些理想主义程序员们的专利,也不是那些想要在license上节
相关文档:
初学php,需要搭建其开发环境。由于版本更替等原因,网上的方法几乎一人一个样,让人无所适从。昨天花了一晚上时间才在XP下配置好,现将其整理出来,希望能对别人有用。(2007-11-21)
一、 下载软件。
1. 下载apache_2.0.55-win32-x86-no_ssl.msi,右键用迅雷点击此处下载(直接点击不行)。
2. 下载php-5 ......
1.设置web.config文件.
<system.web>
......
<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" />
......
</system.web>
或者:
aspx文件中:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"&g ......
/*** Function: PHP header() examples (PHP)
**
Desc: Some examples on how to use the header() function of PHPYou find
a detailed tutorial at expertsrt.com (English) or at ffm.junetz.de
(German).These is also a good help about caching at web-caching.com.
**
Example: see below.
<br/& ......
要实现a控件控件触发b控件服务器端事件,需给a控件添加js脚本,以b控件名义提交页面,具体代码:
var theForm = document.forms['form1'];
theForm.__EVENTTARGET.value = "b"; //触发b控件服务器端方法
theForm.__EVENTARGUMENT.value = "a trigger";//传递的参数
theForm.submit();
注意:需要设置页面属性中的 enab ......
using System;
using System.Collections.Generic;
using System.Text;
using System.Security.Cryptography;namespace md5
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(UserMd5("8"));
Console.WriteLine(GetMd5Str("8"));
}
/**//// <summary>
/// MD5 16位加密
......