PHP的发展历程

了解一门语言,我们必须知道这门语言的发展史,现在我通过版本的变化以时间轴的形式来说明PHP的发展历程。

1.1995年初PHP1.0诞生

Rasmus Lerdof发明了PHP,这是简单的一套Perl脚本,用来跟踪访问者的信息。这个时候的PHP只是一个小工具而已,他的名字叫做“Personal Home Page Tool”(个人主页小工具)。

2.1995年6月PHP2.0诞生

Rasmus Lerdof用C语言来重新开发了这个工具,取代了最初的Perl程序。这个新的用C写的工具最大的特色就是可以访问数据库,可以让用户简单的开发动态Web程序了。这个用C写的工具又称为PHP/FI。它已经有了今天PHP的一些基本功能了。

3.1998年6月PHP3.0诞生

虽然说1998年6月才正式发布PHP3.0,但是在正式发布之前,已经经过了9个月的公开测试。

Andi Gutmans 和 Zeev Suraski 加入了PHP开发项目组。这是两个以色列工程师,他们在使用PHP/FI 的时候发现了PHP的一些缺点,然后决定重写PHP的解析器。

在这个时候,PHP就不再称为 Personal Home Page 了,而改称为 PHP : Hypertext Preprocessor。

PHP 3.0 是最像现在使用的PHP的第一个版本,这个重写的解析器也是后来Zend 的雏形。PHP 3.0 的最强大的功能就是它的可扩展性。它除提供给第三方开发者数据库、协议和 API 的基础结构之外,还吸引了大量的开发人员加入并提交新的模块。

4.2000年5月PHP 4.0 发布

Andi Gutmans 和 Zeev Suranski 在 4.0 做的最大的动作就是重写了 PHP 的代码,发明了Zend 引擎来增强程序运行时的性能和 PHP 的模块性。这个Zend 实际上就是Andi 和 Zeev 名字所写的合称。

使用了Zend 引擎,PHP 除获得更高的性能之外,也有其它一些关键的功能,包括支持更多的Web 服务器、HTTP Session 的支持、输出缓存等。

5.2004年7月PHP5.0发布

PHP 5.0 的核心是Zend 引擎 2 代。他引入了新的对象模型和大量的新功能,比如引入了PDO(PHP Data Object)。

6.2015年12月 PHP 7.0 发布

使用PHPNG 引擎,大幅提高了性能,引入了标量类型声明、返回值类型声明、匿名类等一些期待已久的新特性。

细心的你可能会发现PHP6到哪里去了?说来有趣,PHP 的开发者们原来计划有 PHP 6,可是做着做着把原来 PHP 6计划的特性在 PHP 5.5、5.6 版实现了,后来大家一商量算了,直接跨过 PHP 6 进入PHP 7 时代了。

PHP的发展历程的更多相关文章

  1. C#与C++的发展历程第三 - C#5.0异步编程巅峰

    系列文章目录 1. C#与C++的发展历程第一 - 由C#3.0起 2. C#与C++的发展历程第二 - C#4.0再接再厉 3. C#与C++的发展历程第三 - C#5.0异步编程的巅峰 C#5.0 ...

  2. Linux实战教学笔记03:操作系统发展历程及系统版本选择

    标签(空格分隔): Linux实战教学笔记-陈思齐 第1章 Linux简介 1.1 什么是操作系统? 简单讲:操作系统就是一个人与计算机硬件的中介. 操作系统,英文名称Operating System ...

  3. C#与C++的发展历程第一 - 由C#3.0起

    俗话说学以致用,本系列的出发点就在于总结C#和C++的一些新特性,并给出实例说明这些新特性的使用场景.前几篇文章将以C#的新特性为纲领,并同时介绍C++中相似的功能的新特性,最后一篇文章将总结之前几篇 ...

  4. C#与C++的发展历程第二 - C#4.0再接再厉

    系列文章目录 1. C#与C++的发展历程第一 - 由C#3.0起 2. C#与C++的发展历程第二 - C#4.0再接再厉 开始本系列的第二篇,这篇文章中将介绍C#4.0中一些变化,如C++有类似功 ...

  5. Java的发展历程

    Java的发展历程充满了传奇色彩. 最初,Java是由Sun公司的一个研究小组开发出来的, 该小组起先的目标是想用软件实现对家用电器进行集成控制的小型控制装置. 开始,准备采用C++,但C++太复杂, ...

  6. C# 6.0可能的新特性及C#发展历程

    据扯,C# 6.0在不远的将来就发布了,对应的IDE可能是VS 2014(.Net Framework 5.0),因为VS 2013已于2013年10月份发布了,对应的是.Net Franework ...

  7. C#发展历程以及C#6.0新特性

    一.C#发展历程 下图是自己整理列出了C#每次重要更新的时间及增加的新特性,对于了解C#这些年的发展历程,对C#的认识更加全面,是有帮助的. 二.C#6.0新特性 1.字符串插值 (String In ...

  8. Java起源、发展历程、环境变量、第一个Java程序等【1】

    若有不正之处,请多多谅解并欢迎批评指正,不甚感激. 请尊重作者劳动成果,转载请标明原文链接: 本文原创作者:pipi-changing 本文原创出处:http://www.cnblogs.com/pi ...

  9. 1.html5 学习要求,Html 5发展历程

    以下是我在学习html5,项目中用到的关于html5的总结和心得. 1.学习要求 Html4.01,xhtml Css2 Javascript 耐心,动手,毅力. 2.Html 发展历程 Html1. ...

  10. 第一篇:GPU 编程技术的发展历程及现状

    前言 本文通过介绍 GPU 编程技术的发展历程,让大家初步地了解 GPU 编程,走进 GPU 编程的世界. 冯诺依曼计算机架构的瓶颈 曾经,几乎所有的处理器都是以冯诺依曼计算机架构为基础的.该系统架构 ...

随机推荐

  1. LeetCode--Combination Sum --ZZ

    http://blog.csdn.net/linhuanmars/article/details/20828631 这个题是一个NP问题,方法仍然是N-Queens中介绍的套路.基本思路是先排好序,然 ...

  2. PowerShell管理Hyper-V(Windows2008R2)

    gwmi -list -namespace "root\virtualization" 在Windows2012R2之前的版本,Hyper-V管理都是用的root\virtuali ...

  3. 浅析tnsping

    首先,先弄清楚tnsping是什么: Oracle Net 工具(命令)tnsping,是一个OSI会话层的工具,测试数据库服务的命令,用来决定是否一个Oracle Net 网络服务(service) ...

  4. Spring学习之-各注解的含义总结

    注解配置 @ComponentScan("spittr.web"):/在加载Spring上下文时,会扫描spittr.web包查找组件 @ComponentScan注解扫描的组件有 ...

  5. less 学习

    收藏地址 : http://www.bootcss.com/p/lesscss/

  6. VMware安装VMware tool后mount /dev/cdrom /mnt成功挂载含rpm包的镜像

    安装虚拟机后如果不安装vmware tool使用mount /dev/cdrom /mnt可以成功挂在含rpm包的镜像,但是安装VMware tool后挂在后/mnt中是错误的内容.查了半天后无果,自 ...

  7. Comparable 接口的使用

    //学生类 package test; public class Student implements Comparable<Student>{ private int age; priv ...

  8. 自定义的打印语句NSLog在控制台输出不完整的完美解决

    // 打印日志 debug #ifdef DEBUG // 调试状态, 打开LOG功能 #define APPLog( s, ... ) printf("class: <%p %s:( ...

  9. 【luogu P1666 前缀单词】 题解

    题目链接:https://www.luogu.org/problemnew/show/P1666 10.13考试题 当时没想出来,觉得是要用trie做,在trie上跑一个树形dp 结果是写了个子集枚举 ...

  10. Mybatis ,框架

    什么是mybatis MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索.MyBatis使用简单的XML ...