PHP编程语言(超文本预处理器)简述

2015-03-29 0 By admin

PHP(php:Hypertext Preprocessor,即php:超文本预处理器”)是一种开源的通用计算机脚本语言,尤其适用于网络开发并可嵌入HTML中使用。
1、PHP的语法借鉴吸收C语言、Java和Perl等流行计算机语言的特点,易于一般程序员学习。
2、PHP最初是由勒多夫在1995年开始开发的;现在PHP的标准由the PHP Group维护。
3、PHP以PHP License作为许可协议,不过因为这个协议限制了PHP名称的使用,所以和开放源代码许可协议GPL不兼容。
4、根据2013年4月的统计数据,PHP已经被安装在超过2亿4400万个网站和210万台服务器上。

应用

PHP是一个应用范围很广的语言,特别是在网络程序开发方面。一般来说PHP大多在服务器端运行,通过运行PHP的代码来产生网页提供浏览器读取,此外也可以用来开发命令行脚本程序和用户端的GUI应用程序。

一、发展历史

1.1、阶段一

PHP原本的简称为Personal Home Page,是拉斯姆斯·勒多夫为了要维护个人网页,而用c语言开发的一些CGI工具程序集,来取代原先使用的Perl程序。
他将这些程序和一些窗体解释器集成起来,称为PHP/FI。PHP/FI可以和数据库连接,产生简单的动态网页程序。
拉斯姆斯·勒多夫在1995年6月8日将PHP/FI公开发布;这个发布的版本命名为PHP 2。

1.2、阶段二

在1997年,任职于Technion IIT公司的两个以色列程序员:Zeev Suraski和Andi Gutmans,重写了PHP的语法分析器,成为PHP 3的基础,而PHP也在这个时候改称为PHP: Hypertext Preprocessor。
在1998年6月正式发布PHP 3。
Zeev Suraski和Andi Gutmans在PHP 3发布后开始改写PHP的核心,这个在1999年发布的语法分析器称为Zend Engine,他们也在以色列的Ramat Gan成立了Zend Technologies来管理PHP的开发。

1.3、阶段三

在2000年5月22日,以Zend Engine 1.0为基础的PHP 4正式发布,2004年7月13日则发布了PHP 5,PHP 5则使用了第二代的Zend Engine。
PHP包含了许多新特色,像是强化的面向对象功能、引入PDO(PHP Data Objects,一个访问数据库的延伸库)、以及许多性能上的增强。
目前PHP 4已经不会继续更新,以鼓励用户转移到PHP 5。

1.4、阶段四

2008年PHP 5成为了PHP唯一维护中的稳定版本。最新的发布版本为PHP 7。3.2。
PHP 7的于2015年12月3日开发完成,主要的改进有PHPNG、JIT引擎、抽象语法树编译、异步编程。

二、PHP基础知识介绍

2.1、PHP编程语法

1、PHP的语法参考了Perl、C语言,而且可以集成在HTML之中。
2、PHP剖析引擎只剖析<?php到? >;之间的代码,而不包含在<?php到?–>之间的内容则会直接提交,所以可以将PHP代码嵌入在HTML之中。
3、PHP可以用三种注解的形式:C与C++所使用的“/*…*/”与“//”,和Perl的“#”。

2.2、PHP语言数据类型

PHP主要有八种基本数据类型,其中包括:
1、四种变量类型:整数型(integer)、浮点数型(float)、布尔型(boolean)、字符串(string)
2、两种复合类型:数组(array)、对象(object)
3、两种特殊类型:NULL、资源 (resource)

2.3、PHP编程语言变量

PHP编程语言中,变量以“$”后接变量名称来表示。 变量名称区分大小写。
有效的变量名称以‘字母或下划线’开头,后接任意数目的字母、数字或下划线,PHP也支持使用多字节文字作为变量名。

2.4、面向对象编程

PHP从PHP 3开始有了基本的面向对象(Object oriented)的特性,但直到PHP 5将面向对象部分重新改写之后,PHP的面向对象功能才比较完善。现在PHP可以说是一个有完整面向对象功能的语言。

2.5、PHP编程框架

使用PHP框架可以更快更简单的部署项目并提高开发效率,但学习使用这些框架需要付出额外的学习成本。
最流行的PHP框架包括:Symfony, Zend Framework, Laravel、Phalcon、CodeIgniter、Yii等等。

2.6、PHP开发扩展库

内置多样化的函数是PHP主要的特点之一,这些开放代码的函数提供了各种不同的功能,例如文件处理、FTP、字符串处理、等等。
这些函数的使用方法和C语言相近(例如printf),这也是PHP广为流行的原因之一。
除了内置的函数之外,PHP也提供了很多扩展库(extension),像是各种数据库连接函数、数据压缩函数、图形处理等等。
有些延伸库需要从PECL(PHP Extension Community Library)获取。

2.7、PHP包管理器

Composer是php社区用来管理依赖关系的工具,一般在php项目中通过composer.json声明依赖的外部php库,然后就可以使用Composer管理包依赖。

2.8、PHP编译器

PHP一直被当作解释器使用。PHP编译器则将PHP从解释器中分离,为加快运行和改善与以其他编程语言编写部分的互通性,例如Phalanger将PHP编译成通用中间语言和Hiphop for PHP把PHP源代码编译成C++等。Facebook因应其网站大量的用户,集成了HPHPc、HPHPi、HPHPd以及HHVM这四种脚本引擎,开发出HipHop for PHP,以加强网站性能。