PHP 浅析

PHP浅析

PHP是1994年诞生的,后面加入FSF之后得到飞速的发展,97年推出的PHP3.0版本成为一个比较普及的版本,2000年的PHP5.0加入OO和XML之后得到更好的应用。
PHP+MySQL做动态网站可以很好的提高网站开发速度和网页性能。能让更多的人在比较短的时间之内掌握专门语言进行快速开发,PHP是建立在Perl语言之上的,兼有java,C,C#,.NET的优点,并且语言简单,稍微有点C基础的程序员就能进行动态网页的开发。
Google数据统计表明:现在全球大概有2000万的网站是用PHP来开发的,PHP在网站设计上占有绝大的优势。
         以下就简单的介绍一下这个具有专一性的网络服务器端脚本语言。
Web 2.0 时代的 PHP
2006.10.23   来自: phpchina      钱宏武   
随着所谓WEB2.0时代来临,程序员从来没有时代象今天那样受人注意,很多程序员对于语言的争论也从来没有象今天这样剧烈, JAVA、C++、 PHP、ASP等等,最近又出来一个Ruby,加上Python。无数的FANS在中间进行争论不休,也就是在网路上,如果是在现实 生活中,大概会象《倚天屠龙记》里描述的那样,会决战光明顶来定一个胜负,或者说定出天下第一大门派。而现在定出谁是天下第一大其实很方便,看一下哪个语言旗下的弟子人数即可。而现在最流行的统计方式,就是Google了,看看Google的搜索结果,基本就能判断出其在市面上的网站的使用情况,
  约有5,760,000,000项符合 php 的查询结果
  约有3,070,000,000项符合asp的查询结果
  约有976,000,000项符合java的查询结果
  约有327,000,000项符合perl的查询结果
  约有238,000,000项符合python的查询结果
  约有225,000,000项符合c++的查询结果
  约有176,000,000项符合ruby的查询结果?
  这段时间葛优的光脑袋频繁曝光,总是喋喋不休的告诉俺们一个道理——用的人多的卡就是好卡。而如果套用这个光头明星的话,那就是,我,相信群众,从上面查询的结果大家可以看到,人民群众是很爱戴PHP的。
  但如果你去问 互联网的一些资深开发人员,PHP、ASP与Java,他们之间谁更好?一般来说,这个人都会告诉你,ASP就不用想啦, 微软出的垃圾,PHP和Java是不错的选择,Java适合做大项目,PHP适合做一些短平快的东西。如果你还继续问,这个高手还没有失去耐心的情况下,他大体都会说,你看世界上最大的互动平台eBAY,就是用JAVA写的,中国最大的社区CHINAREN校友录也是JAVA,而很多小的网站,初期都是PHP,后来各种原因都必须改到JAVA上面去。这种感觉就是像说,如果你想学武功以便出去砍人,或者说在江湖扬名立万,那么行军拳你就不用练啦,这个东西是政府拿出来强身键体的,五虎断门刀这个东西你用来对付一般的流氓是绰绰有余,但是碰到绝顶高手你就歇了。而Java有点象太极拳,当今武林最大的门派之一SUN的首推武功,是对负高手的不二选择,于是很多人就认定:PHP是低等武功,练到最好的结果也就是给赌场看看场子,只有练就Java才能做武林盟主。
  PHP 进入中国是98,99年,进入的时候,初期应用的典型是Chinaren校友录,还有很多的互动应用,它以开发方便,容错性好,迅速成为很多网站的选择。到了00,01年,互联网泡沫的时候,很多都是PHP完成对网站的开发,它的流行有以下几个原因:
兼容C的语法,容易掌握?
就这一点来说,它保证了开发人员的稳定来源,基本上说,每个学计算机的人员,没有不学习C 语言的,所以都能在一到两周左右快掌握这个新的语言,然后经过简单的指导,就能开始初期的开发 工作。单从程序本身的开发而言,写了三年以上的程序员,和开发了半年以上的PHP程序员差别不是太大。
  运行的快速
在网路上面,速度是很重要的问题,这一点来说及时是对PHP非常不屑的人也不得不承认PHP得运行速度还是比较令人满意的,只不过由于没有很实际的数据,只是很多人感觉,所以这一点来说,没有非常有力的证据证明。
非常强的容错,很好的鲁棒性能
很多写PHP的人员应该有这个感觉,举个例子,你申请一个PHP中的变量,做数字也行,做数组也行,做字符串也可以。我有时候都在想,这么随意的风格,他是如何保证效率的,只能说写这个语言编译器的人实在太不可思议了。
丰富的函数和简单的操作
能想到的一些操作,如果不是太罕见,你基本都能找到函数库来解决,典型的就是读文件的内容读到一个变量,到现在为止,我知道的好像只有PHP提供一个专门的函数来解决这个问题
以上四个特点,用PHP开发程序非常得普遍,但作为程序来说,这些看起来非常不错的特征也形成PHP的一些问题,造成在很多资深的程序员对其评价很低。
第二条还是效率的问题。市面上对于WEB语言的效率,PHP快只是感觉,并没有一个非常有力的 测试证明它比别的语言快很多,而JAVA和ASP却有一个非常有名的一个测试性能比较。
有人做过试验,对这三种语言分别做循环性能测试及存取Oracle数据库测试。
在循环性能测试,
JSP用了20000*20000的循环? 共四秒钟。
 而ASP、PHP测试的是2000*2000循环(少一个数量级),分别用了63秒。
PHP测试的是2000*2000循环 84秒
三者分别对Oracle8进行1000次Insert,Update,Select和Delete:
JSP需要13秒
PHP需要69秒
ASP则需要73秒
一个有意思的测试,说明一个问题,对于大量的运算,PHP看起来不是一个太成功的语言,这个也是很多高手不是很看好PHP的一个实际例证明,然而实际是这个仅仅是一个有点BT的测试,谁会在互联网上写一个循环400万次循环以上的一次请求应用,我倒很想见识一下。实际上,在WEB应用中这种循环或者说密集的运算非常罕见,如果有,首先该考虑的也是算法的优化,减少循环的次数,然后才是考虑语言本身。并且就算是必要的,也不是Java、PHP和ASP能够解决的,这个时候,如果用的比较多,C会粉墨登场,再多一点,可以使用汇编,非常多的情况下,芯片的设计我想是比较好的选择,怎么样都不会轮到Java这种语言,所以用这种方法来评价PHP是非常不妥的。
  而对于PHP开发中较好的鲁棒性,你怎么写它都能运行,并且很稳定,从而也造成PHP程序员的散漫,程序的开发非常随意,又加上中国互联网产品开发的紧急性,几乎都没有很好的文档,从而后期PHP程序的维护成为无数项目经理的噩梦。这一点也是很多高手或者说资深程序员对于PHP评价很低的地方,而当很多项目经理需要要规范开发的时候,却又发现无从规范起,Java有Struts、MVC……而PHP却缺乏成体系的开发架构,从而也成为PHP很难成为企业应用系统的选择。
至于丰富的函数操作,这个大概是唯一没有被人诟病的地方,但是 Java、ASP以及Perl都有很丰富的函数,PHP在这一点没有非常大的优势,所以只是成为人们选择它的一个不是很重要的理由。
专家预言: PHP 将比 Java 更好更受欢迎
2006.01.20   来自:赛迪
Netscape 共同创办人 Marc Andreessen Zend/PHP 会议上预言,简单的 PHP 描述性语言撰写工具,在 Web-based 应用程序的开发上,将会比 Java 更受欢迎。
Sun 1995 年发表 Java 之后,由于 Java 的友善接口让工程师设计软件更为容易,受到工程师欢迎,但十年下来 Java 陆陆续续被加入了强大的功能,反而使它变得不容易操作。 Marc Andreessen 指出,现在的 Java 可能比 C++ 更难学,在此同时, PHP 传承了 Java 的简单精神,并创造一个比 Java 更容易使用的程序开发环境。
PHP 为一开放源码项目,其中包括可以简化程序的描述性语言引擎以及一个大的链接库,也有专门开发 PHP 的公司,如 Zend 就有销售 PHP 套装产品、程序撰写工具及技术支持服务。
Andreessen 的看法可能很难博得 Java 拥护者的认同,因为现阶段全球仍有数百万专研 Java 的工程师,也有数百家公司参与 Java Community Process JCP ),在 JCP 中共同主掌 Java 的命运。但是,就算是大力扶植 Java 、甚至以 Java WebSphere 服务器软件核心的 IBM ,也认为 PHP 的前途会比 Java 来得好。
IBM 新网络科技事业处副总裁 Rod Smith 就说,「简单」是 PHP 最大的特色,而且它不会为了与其它语言竞争而加入新的语言功能, Java 显然就不是这么做。
而且, PHP 的势力也不小,目前约有 2200 万的网站采用 PHP ,包括 Yahoo! Lufthansa 等知名网站,数量并持续增加中,并有 450 个软件工程师有权去审核在 PHP 软件上的任何变动。
Java 相较, PHP 可用范畴限制较多,它仅能用在网络服务器上,不像 Java ,同时可用在网络服务器、个人计算机、手机、芯片卡或其它装置。
Java PHP 除了在某些方面相互竞争之外,某个程度来看,也在彼此靠陇。甲骨文产品策略副总 Ken Jacobs 表示,即使甲骨文( Oracle )销售同时可执行 Java PHP Java 服务器与数据库软件,但正为 Java 加上一项额外的新功能,让这两个软件项目可以协同运作;更具体的说, Java 规格需求 223 JSR 223 )将会 协助建构在 Java 社群与 PHP 社群之间的那座桥梁
日前才发表可以分享照片等内容网站 “Ning” Marc Andreessen 也说,现在 Ning 也同时执行 Java PHP ,其中核心系统是由 Java 组成,比起该站所有可看见的应用程序都是由 PHP 写成, Java 更像是操作系统层级。
就像其它诸如 Linux Apache 的开放源码项目, PHP 目前也受到计算机工业主要大厂的庇佑,像 IBM Oracle 都致力开发让 PHP 软件可以撷取旗下数据库的程序。事实上, IBM Oracle 的行为就像在为 PHP 背书,连这两大厂都支持 PHP ,证明 PHP 也许就是个好东西。
互联网周刊: 草根语言 ”PHP 挑战 大腕 ”Java .Net
2006.11.21   来自:互联网周刊
Zeev这位30岁的以色列小伙子看起来一点也不像有权势的人物,可是他共同创始的PHP语言,却成为网络时代异军突起的一个传奇。最新的消息是,Sun公司已决定把免费公开Java源代码提上日程,而微软的脚本语言ASP.net也只得一直实行免费赠送。这个小个子PHP及其同伙Linux、Apache、MySQL掀起的开放源代码浪潮影响了整个Web世界,给程序编写及发布方式带来了革命性的变化。重要的是,PHP两不耽误,一边保持着开源的真谛,另一边则取得了商业上的成功。
就在最近,PHP商业化公司Zend又获得了2000万美元的投资,投资人包括Intel Capital和SAP Ventures。IBM也将与Zend合作,把PHP引入到IBM的中级服务器平台,以支持访问DB2数据库,这笔交易价值数百万美元。而Zend的下一步很有可能是进行首次公开募股(IPO)。
在今天,全球已有2000万个网站使用PHP,包括最流行的雅虎、Google、百度、YouTube、Digg,也包括像汉莎航空电子订票系统、德意志银行的网上银行、华尔街在线的金融信息发布系统,甚至军队系统这类五花八门和苛刻的环境。PHP究竟是怎样炼成的?
源于草根
作为目前全球最流行的网站应用软件编程语言,PHP的成长历程和Linux有异曲同工之妙。1994年,它由Rasmus Lerdorf最早创建,Lerdorf只是想记录自己的在线简历,后来许多人都向他要程序的拷贝。1995年6月,Lerdorf在加入了一些介绍文档之后,在Usenet新闻组发布出去,这就成了最早的PHP 1.0。
这期间,两位大学生Zeev Suraski和Andi Gutmans需要能做一个基于Web的软件项目,需要能很好地支持Linux,但当时的ASP并不完善,JSP又比较复杂,所以就选择了PHP。其后他们在工作中发现PHP还有些不足,便自愿加入PHP语言开发工作组,并重新编写了底层的解析引擎。1998年6月,有着历史意义的PHP 3.0发布,用户数开始飞涨。1999年,他们两人又创建了Zend公司,开发了Zend Engine,大大提高了PHP的性能。
雅虎是PHP语言最早的使用者之一,随着雅虎的兴起,大量的站点开始学习雅虎背后的语言—PHP。此时,软件开始从传统模式向基于Web模式转变,几大势力一一长成:Linux操作系统、Apache网络服务器、MySQL服务器,以及以PHP语言为代表的“P”族语言(PHP、Perl、Python),一本德国计算机杂志把它们共同称为LAMP(明灯),也由此与J2EE架构(以Java为编程语言,Sun公司主导)、.Net架构(微软公司主导)形成了三足鼎立之势。在Evans Data公司的一份统计资料中,PHP使用者比Java及.Net的使用者稍有差距,但预计2007年的增长率将达37%,超过Java的16%和.Net的27%,这场草原上燃烧的星火正越来越旺。
从革命者到务实者
PHP成功的两大秘诀,第一条就是简单。PHP简单到让喜欢卖弄技巧的程序员感到羞愧,但让那些渴望进入Web开发领域的初学者欣喜若狂。PHP像是一条鲶鱼,与XML、Web Services融合无间。即使历次的版本升级,也无需担心PHP会丧失这种简单的特性。无疑,这个特点给需要快速开发、交互应用的Web2.0潮流极大的带来了方便,有超过半数的Ajax-enabled和Web2.0站点都选择了PHP。
PHP的第二个秘诀,就是“Community(强大的社区)”。Discuz!软件的开发者,25岁的康盛创想公司CEO戴志康就是这个特性的受益者。他说,不像其他的开发者需要从零开始,大量的PHP程序都有开放源代码可供学习,后人站在前人的肩膀上加以改进,又将这种知识积累的结果回馈给社区。这曾被比喻为“大教堂和集市”,在集市中,知识得到了最大化的利用,效率提高、错误减少、成本降低。而大教堂只能越垒越高,不断延迟发布时间。
现在,全球已有450万名PHP开发工程师,被称为“PHPer”,他们成为了软件世界中最有影响力的社区之一。有趣的是,开源的浪潮经过数年的发展,早已经走向庙堂,无论是Intel、IBM、Oracle,甚至是微软,都成为鼓吹甚至主导开源的力量。11月初,微软与Zend公司达成了一项长期合作的伙伴关系,共同推动PHP语言的发展。
与其说开源运动是个颠覆者,不如说更像是粘合剂。中国开源软件推进联盟主席陆首群说,LAMP也可以派生出WAMP(W代表Windows)。事实上,PHP与.Net是并存的,PHP也可以和Windows捆绑在一起,两者并没有冲突,可以因地致宜地使用开源与闭源混合架构(Mix)。
目前PHP社群和Zend公司的目标,是将PHP推广到企业级应用。在这一点上,欧洲和北美远远领先于中国。Zend(中国)技术支持中心总监耿志军说,PHP已经在金融、政府、交通、电信、媒介、娱乐等各大行业被广泛使用,完全脱离了一个简单网络语言开发工具的境界。而在中国, PHP只应用于门户网站和部分的专业网站,严谨的政府和金融网站难以看到它的身影。
即便如此,PHP正在崛起,这一点毫无疑问。正如Red Hat推动了Linux的发展,Zend也正努力将PHP带入黄金时代。Zend于2005年在慕尼黑新开设了一家子公司;今年在法国也将设立一个子公司;在中国,Zend公司与康盛创想公司建立了合作关系,并成立了Zend(中国)技术支持中心。有很多像耿志军这样的年轻人正加入到这个队伍中,这些围绕着PHP的力量和这个语言本身一样充满了朝气。
注:PHP是一种开放源代码的脚本编程语言,主要用于WEB服务器端应用程序,用于动态网页设计。PHP可以用于替代微软的ASP/VBScript/JScript体系、Sun公司的JSP/Java体系,以及CGI/Perl等。
访 PHP 核心缔造者 Zend 创始人 & CTO Zeev Suraski
2006.10.31   来自: CNET       
随着互联网开源潮流的迅速发展,全球IT业正迎来一个新的发展成长期。PHP作为最成熟的开源体系—LAMP(Linux、Apache、MYSQL、PHP)的重要一员,以其简单性、开放性、低成本、安全性和适用性,正受到越来越多的WEB程序员的欢迎和喜爱。日前,Zend公司CTO,PHP的构建者之一Zeev Suraski先生访华,接受记者采访,就PHP新产品、Zend公司的发展与未来发表了自己的看法。
  记者:在中国,用户对PHP比较了解,但对Zend就不太清楚了,能否现简单介绍一下Zend公司,Zend的核心产品以及未来将对PHP做出那些新的贡献?
  Zeev Surask:Zend公司是一家致力于PHP的发展和推广的公司,也是全球唯一能够称为PHP的公司,因为PHP的三个创建者有2个(Andi和我)创建了这家公司,而且我们一直在推广着PHP,包括修正PHP,为PHP加入新的功能等等。
  另外,我们一直在推动PHP走向企业级的应用,比如我们下周马上要召开的Zend Conference 2006就是为了让PHP走向企业应用。
  Zend为PHP提供解决方案,但是并不是说PHP是Zend的,PHP属于PHP社区,全球有超过500万个人在开发PHP,Zend公司只是PHP的推动者。
  记者:PHP是否就只定位在web方面?PHP的定位是什么?PHP是否考虑能够做更大型的企业级应用?
  Zeev Surask:“简单”是PHP语言的最大特性之一,新产品会一直保持简单这个特性的。PHP6也将延续简单这个特性,并且加入了Zend与YAHOO一起开发的Unicode模块。
  我们正在开发一个标准的开发框架Zend Framework,希望更多PHP使用者能通过它快速构建Web应用。还有,我们将与IBM合作推出集成Zend IDE开发特性的Elicpse供大家使用。
  PHP可以应用在基于Web的产品中,比如CRM、OA等,如SugarCRM等。此外PHP还可以使用在许多的传统领域,例如在国外,PHP在汽车、游戏、银行等行业都有很大应用。根据企业的具体使用需求来说Zend Platform的功能比较多,主要是帮助企业提高PHP性能、提高稳定性和降低开发成本等。
  记者:年底即将推出的PHP6将有哪些显著的改进和重大突破?
  Zeev Surask:PHP6集成了Unicode等诸多特性, 其它的特性还在开发中,比如web service。Web service在PHP5.X就会开始用。
  PHP6同时去掉了一些以前不太好的特性。但是无论怎样,PHP两大特性是不会丢失的:第一,使用简单,稳定;第二,不会对PHP增加性能消耗。另外,我们也希望PHP6加入Unicode以后,能在中国这样一个使用汉字的国家更迅速地推广开来。
  记者:您对中国的PHPer的水平评价如何?您认为中国的PHPer应该如何进一步提高自己?
  Zeev Surask:中国有很多的PHP开发人员,而且对PHP都是比较精通的。我要强调的一点是,正是中国的PHP开发工程师的贡献,PHP的发展才有今天。
  PHP入门很简单,但是PHP会不断有新的功能出现,所以希望中国的PHPer能够不断学习。PHPer要多从许多PHP书籍、PHP技术网站获取最新的信息和技术。对于企业来说在使用之前请仔细了解PHP,然后再开始使用PHP进行开发。如果一个PHPer创建一个PHP程序,而没有其它商业发展目的的话,就把它公开,这样能够让更多的人参与进来,一方面可以提高你自己,另外也可以很快地提高你的PHP程序。
记者:对于一个100万用户以上的网站,使用什么样的PHP版本、Apache版本和MySQL合适呢?
Zeev Suraski:如果对刚开始使用PHP的个人或者公司来说,我们推荐大家使用最新的版本,如果大家已经使用PHP很长时间的话,也没必要不停地升级。
记者:PHP与MYSQL及APACHE的配合关系会一直发展下去吗?
Zeev Suraski:是的!MySQL是非常优秀的数据库,Apache更是目前最为流行的Web Server。而且我们之间的合作一直非常顺利,我们今后将会加强与MySQL以及Apache的合作。
  记者:无论Java还是.Net,在中国都有很强的市场,PHP似乎还是相对比较的弱,Zend如果改变这种状态呢?如何推进中国PHP的发展呢?
  Zeev Suraski:微软等公司也充分意识到开源的重要性,并推动其.Net长期发展,所以PHP与.Net是并存的,并且PHP也可以和windows捆绑在一起。我想微软要推广的是windows平台,和PHP应该没有太大的冲突。
  经过调查,PHP和Java、.Net名列前三名主流应用平台,我们预计在2007年的增长率PHP要超过Java和.Net。
记者:请问您对PHP的未来是如何看待的?PHP是否会成为Java那样复杂的开发语言?会一直坚持Web语言这个特点吗?
Zeev Suraski:是的,PHP最终就是为了Web开发而出现的,而且我们一直在秉承这个理念,将来也是这样的!我们希望PHP能够成为Web开发最好的开发语言。PHP能够成功是因为两点:第一是它简单;第二是获得了许许多多的PHP爱好者支持。
  所以,从第一点出发,我们也会一直让PHP保持简单这个特性。因此,我们在PHP的后续版本中如果需要加一个新的特性,如果新的特性严重影响了PHP的性能,我们肯定不会采用的。曾经也有人跟我们抱怨PHP5变得复杂了,也有人说PHP5的功能还不够强大。因此,无论如何,我们会让PHP保持简单易用,高性能等特点,这是毋庸置疑的。
  记者:在1997年前后,Web开发语言例如ASP与JSP等已经比较流行。请您谈谈当年为什么开发PHP语言?
  Zeev Suraski:当时我和Andi(PHP语言另一个创始人)都还是大学生,我们需要做一个基于Web的软件项目,而且能够良好地支持Linux,但是当时ASP并不是非常的完善,JSP又比较复杂,所以我们就选择了PHP。接着,我们在工作当中发现PHP还有些不足,因此我们便加入了PHP的扩充与发展,并且后来开发了Zend Engine。加入了Zend Engine以后PHP的性能得到非常大的补充,而且开始有很多人开始使用PHP,我们非常高兴。
  Zend创始人& CTO Zeev Suraski简介
  Zeev毕业于Technion--Israel Institute of Technology,是PHP语言的核心缔造者,他和其他PHP贡献者以早期的PHP代码为蓝本,编写出了官方发布的PHP3.0版本。随着PHP3的出现,PHP技术得到了迅速的发展。其强大的可延长性的特点也吸引了大量的开发工程师。随后,Zeev带领Zend成功开发了Zend Engine I并推出了PHP4.0,并相应开发出了PHP4.0的许多组件。 PHP4.0 因为Zend Engine得到了革命性地发展并极大地增强了性能和可靠性。
  今天,全世界有超过2000万的网站在使用着PHP,PHP语言也因此被NetCraft称为互联网最流行的开发语言。随着PHP发展,他带领Zend公司又成功开发了Zend Engine II,实现了PHP5.0版本的发布和普及。
  正因为Zeev一直以来对Zend公司和PHP的杰出贡献,Zend公司一直具备PHP技术的设想和创新能力,并因此保持PHP独一无二的技术领先地位。
  Zeev Suraski还是一位素食主义者。
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值