您当前的位置: 首页 > 网站编程 > PHP教程 > PHP发展历史

PHP发展历史

作者:不详 来源:网络 发布时间: 2011-05-28 16:44 点击:
PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩写。PHP是一种HTML内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用

PHP发展历史

  PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩写。PHP是一种HTML内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。它可以比CGI或者Perl更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,成分利用了服务器的性能;PHP执行引擎还会将用户经常的PHP程序驻留在内存中,其他用户在一次这个程序时就不需要诚信编译程序了,只要直接执行内存中的代码就可以了,这也是PHP高效率的体现之一。PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。
  
  PHP之父Rasmus Lerdorf
  
  PHP最初是1994年Rasmus Lerdorf创建的,刚刚开始只是一个简单的用Perl语言编写的程序,用来统计他自己网站的者。后来又用C语言重新编写,包括可以数据库。在1995年以Personal Home Page Tools(PHP Tools)开始对外发表第一个版本,Lerdorf写了一些介绍此程序的文档,并且发布了PHP1.0。在这早期的版本中,提供了访客留言本、访客计数器等简单的功能。以后越来越多的网站使用了PHP,并且强烈要且增加一些特性,比如循环语句和数组变量等等,在新的成员加入开发行列之后,在1995年中,PHP2.0发布了。第二版定名为PHP/FI(Form Interpreter)。PHP/FI加入了对mSQL的支持,从此建立了PHP在动态网页开发上的地位。到了1996年底,有15000个网站使用PHP/FI;时间到了1997年中,使用PHP/FI的网站数字超过五万个。而在1997年中,开始了第三版的开发计划,开发小组加入了Zeev Suraski及Andi Gutmans,而第三版就定名为PHP3。2000年,PHP4.0又问世了,其中增加了许多新的特性。
  
  PHP的特性包括:
  
  开放的源代码:所有的PHP源代码事实上都可以得到。
  
  PHP是免费的。
  
  基于服务器端:由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS下。
  
  嵌入HTML:因为PHP可以嵌入HTML语言,所以学习起来并不困难。
  
  简单的语言:PHP坚持脚本语言为主,与Java以C++不同。
  
  效率高:PHP消耗相当少的系统资源。
  
  图像处理:用PHP动态创建图像
  
  PHP3与PHP4的比较
  
  PHP3跟Apache服务器紧密结合的特性;加上它不断的更新及加入新的功能;而且几乎支持所有主流与非主流数据库;再以它能高速的执行效率,使得PHP在1999年中的使用站点已经超过了150000万。加上它的源代码完全公开,在Open Source意识抬头的,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新的活力,使得PHP无论在UNIX、LINUX或是Windows的平台上都可以有新的功能。它提供丰富的函数,使得在程序设计方面有着更好的支持。
  
  PHP4.0整个脚本程序的核心大幅更动,让程序的执行速度,满足更快的要求。在最佳化之后的效率,已较传统CGI或者ASP等程序有更好的表现。而且还有更强的新功能、更丰富的函数库。无论您接不接受,PHP都将在Web CGI的领域上,掀起巅覆性的革命。对于一位专业的Web Master而言,它将也是必修课程之一。
  
  PHP4.0是更有效的,更可靠的动态Web页开发工具,在大多数情况运行比PHP3.0要快,其脚本描述更强大并且更复杂,最显着的特征是速率比的增加。PHP4.0这些优异的性能是PHP脚本引擎重新设计产生的结果:引擎由AndiGutmans和Zeev Suraski从底层全面重写。PHP4.0脚本引擎――Zend引擎,使用了一种更有效的编译――执行方式,而不是PHP3.0采用的执行――当解析时模型。
  
  PHP4在3.0版的基础上增加或增强了许多有用的特征,主要
  
  (1)别名:在PHP4中,可以利用引用为变量赋值,这给编程带来了很大的灵活性。
  
  (2)扩充了API模块:PHP4.0为扩展的API模块的提供了扩展PHP接口模块,它比旧的API版本显着地快。PHP模块已有的及最常用的接口多数被转换到使用这个扩展的接口。
  
  (3)自动资源释放:PHP4增加了引用计数功能,这种新技术的引入使PHP4具有了自动内存管理功能,减轻了开发人员的负担。
  
  (4)布尔类型:PHP4.0支持布尔类型。
  
  (5)进程生成:在UNIX环境下的PHP4.0提供了一个很智能和通用的生成进程,使用了一种名为基于automake/libtool的系统生成技术。
  
  (6)COM/DCOM支持:PHP4.0提供COM/DCOM支持(仅用于Windows环境)可以无缝地存取和COM对象。
  
  (7)与PHP3.0兼容性很好:PHP4.0是与PHP3.0代码向后兼容性接近100%。由于PHP4的改进的体系结构,两者有一些细微的差别,但是大多数人将可能永远不可能遇上这种情况。
  
  (8)配置:PHP4重新设计和增强了PHP。ini文件,这使得用PHP。ini来配置PHP显得极为容易,这个文件可以在运行时被Apache(unix系统)或由Windows注册(Windows环境)。
  
  (9)加密支持:PHP4实现了完整的加密,这些加密功能是一个完整的mycrypt库,并且PHP4.0支持哈希函数。Blowfish,TripleDES,MD5,并且SHA1也是可使用的一些加密算法。
  
  (10)类型检查:PHP4.0支持同一操作符用于评类型检查:===(3等号运算符),为在两个值和其类型之间作检查。例如,3===3将视为假(类型是不同的),而3==3(相等判断)将视为真。
  
  (11)FTP支持:PHP4.0支持FTP。通常,你会为通过一个调制解调器连接下载一个大文件提供一个接口。然而,如果你确实有需要,可以使用PHP。
  
  (12)PHP4新增函数或功能增强函数:PHP4.0新增了许多函数,同时也将许多现有的函数功能进行了增强,以下是一些例子。array_count_values()eval()foreach()nclude()ob_end_clean()ob_end_flush()ob_get_contents()ob_start()strip_tags()unset()
  
  (13)here打印:PHP4.0的Here打印是与Perl类似的,尽管完全不相同。Here是打印大容量文章的一个有用的方法,例如在HTML文件中,不会漏掉任何一个字符,例如目录标记。
  
  (14)HTTP Session fallback系统:为HTTP Session管理的一个fallback系统在PHP4.0被实现。缺省情况下,Session标识符由cookies存储。如果没有cookies支持或一项cookies任务失败,Session标识符自动被创建并在URL的查询字符串中被携带。
  
  (15)ISAPI支持:PHP4.0能作为一个个性化的ISAPI模块作为IIS插件。这比PHP3.0更有效,它作为一个外部的程序来运行。
  
  (16)内存:PHP4.0能更有效的使用内存,导致较少的内存占用消耗,这主要归功于引用计数技术的实现。
  
  (17)其他类成员函数:在PHP4.0你能在成员函数本身的作用域或全局范围内调用其他类的成员函数。例如,你能用一个子函数覆盖父函数,并在子函数中调用父函数。
  
  (18)多维数组:在PHP4.0,利用GET,POST,Cookies的进行的数据传输支持多维数组。
  
  (19)个性化的HTTP Session支持:HTTP Session处理,包括fallback系统管理,在PHP4.0被它的新库函数实现。在版本3.0中处理Session要求使用PHPLIB和第三方的库函数,它比把Session直接地由PHP支持慢了许多。
  
  (20)个性化的Java支持:PHP4.0支持和java的交互。这种个性化的Java支持为PHP在Java对象上创建和使用方法提供一个简单并且有效的工具。
  
  21)对象和数嵌套组:PHP4.0实现了功能更加强大的对象,移去了PHP3.0存在的种种句法限制。对象能在数组以内被嵌套并且反过来也如此,可以根据你的需要实现嵌套。
  
  (22)面向对象的编程:PHP4.0为面向对象的编程和构造类及对象提供扩展的功能和新特征。PHP4实现了对象重载,引用技术等新技术。
  
  (23)对象重载支持:对象重载语法允许第三方的基于面向对象的类库使用PHP4的面向对象的特征存取他们自身的功能。使用这个特征的一个COM模块已经被实现了。
  
  (24)输出缓冲支持:PHP提供了一个输出缓冲函数集合。输出缓冲支持允许你写包裹函数功能压缩缓冲区。在PHP4的输出缓冲支持允许HTML头信息存放,无论HTML的正文是否输出。头信息((header(),content type,and cookies)不采用缓冲。
  
  (25)增加了PCRE库:PHP4.0包括一个Perl兼容的正则表达式(PCRE)库,和正常regex库一起与PHP绑定。split和replace PCRE功能被支持。PCRE和Perl正规表达式之间有一些细微差别。
  
  (26)PHP.ini文件:PHP.ini文件在PHP4.0被重新设计,使用的PHP的配置PHP.ini是更容易并且更有效的。全部文件能被Apache在运行时间操作(在Apache环境下)或由Windows注册表(在Windows下面)。被加入PHP.ini文件的配置指令自动地在所有相关的模块中被支持。
  
  (27)引用计数:PHP4.0为系统中的每个数值提供了引用计数,包括资源。一旦一个资源不再被任何变量引用,它自动地被释放以节省内存资源。利用这个特征的最明显的例子一个内置SQL查询的循环语句。在PHP3.0中,每次递归另外的SQL结果集合重复申请内存,直到脚本执行完毕,这些结果集合占用的内存才被释放。
  
  (28)支持引用:通过引用可以改变一个变量的值。
  
  (29)函数的运行时绑定:PHP4.0的运行时间绑定功能允许你在他们被声明以前调用,无论声明是否在代码以后或是在运行时间。
  
  (30)类的运行时信息:PHP4.0支持在运行时刻存取下列类信息:一个对象的类名,一个对象的父类的类名字,以及对象函数所在的名字。
  
  (31)服务器抽象层:为支持Web服务器提供了增强型SAPI(服务器API)接口,是PHP4。0不可分的一部分。这个服务器抽象层,提供了通用的WEB服务器接口支持,支持多线程WEB服务器,为大多数的WEB服务器提供透明的支持,这些服务器包括Apache,IIS(ISAPI),以及AOL服务器。

分享到:
本文"PHP发展历史"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4