
1.1 PHP概述
1.1.1 PHP是什么
PHP(Hypertext Preprocessor,超文本预处理器)是一种服务器端、跨平台、HTML嵌入式的脚本语言。其独特的语法混合了C语言、Java语言和Perl语言的特点,是一种被广泛应用的开源的多用途脚本语言,尤其适合Web开发。

PHP概述
1.1.2 PHP语言的优势
PHP起源于1995年,由加拿大人Rasmus Lerdorf开发。它是目前动态网页开发中使用最为广泛的语言之一。目前在国内外有数以千计的个人和组织的网站在以各种形式和各种语言学习、发展和完善它,并不断地公布最新的应用和研究成果。PHP能在Windows、Linux等绝大多数操作系统环境中运行,常与免费Web服务器软件Apache和免费数据库MySQL配合使用于Linux平台上,具有很高的性价比。使用PHP进行Web应用程序的开发具有以下语言优势。
• 速度快
PHP是一种强大的CGI脚本语言,执行网页速度比CGI、Perl和ASP更快,而且占用系统资源少。这是它的第一个突出的特点。
• 支持面向对象
面向对象编程(OOP)是当前软件开发的趋势,PHP对OOP提供了良好的支持。可以使用OOP的思想进行PHP的高级编程,对于提高PHP编程能力和规划好Web开发构架都非常有意义。
• 实用性
由于PHP是一种面向对象的、完全跨平台的新型Web开发语言,所以无论从开发者角度考虑还是从经济角度考虑,都是非常实用的。PHP语法结构简单,易于入门,很多功能只需一个函数就可以实现,并且很多机构都相继推出了用于开发PHP的IDE工具。
• 支持广泛的数据库
PHP可操纵多种主流与非主流的数据库,如MySQL、Access、SQL Server、Oracle、DB2等。其中,PHP与MySQL是现在最佳的组合,它们的组合可以跨平台运行。
• 可选择性
PHP可以采用面向过程和面向对象两种开发模式,并向下兼容。开发人员可以从所开发网站的规模和日后维护等多角度考虑,选择所开发网站应采取的模式。
PHP进行Web开发过程中使用最多的是MySQL数据库。PHP 5.0以上版本中不仅提供了早期MySQL数据库操纵函数,而且提供了MySQLi扩展技术对MySQL数据库的操纵,这样开发人员可以从稳定性和执行效率等方面考虑操纵MySQL数据库的方式。
• 成本低
PHP属于自由软件,其源代码完全公开,任何程序员为PHP扩展附加功能非常容易。在很多网站上都可以下载到最新版本的PHP。目前,PHP主要是基于Web服务器运行的,它不受平台束缚,可以在UNIX、Linux等众多版本的操作系统中架设基于PHP的Web服务器。在流行的企业应用LAMP平台中,Linux、Apache、MySQL和PHP都是免费软件,这种开源免费的框架结构可以为网站经营者节省很大一笔开支。
• 版本更新速度快
与数年才更新一次的ASP相比,PHP的更新速度要快得多,因为PHP几乎每年更新一次。
• 模板化
PHP技术使程序逻辑与用户界面相分离。
• 应用范围广
PHP技术在Web开发的各个方面应用得非常广泛。目前,很多知名网站的创作开发都是通过PHP语言完成的,如搜狐、网易和百度等。
1.1.3 PHP的版本
PHP最初只是一个简单的用Perl语言编写的程序,用来统计网站的访问者。后来又用C语言重新编写,包括可以访问数据库。在1995年以Personal Home Page Tools(PHP Tools)开始对外发表第一个版本,Lerdorf写了一些介绍此程序的文档,并且发布了PHP 1.0。这个早期的版本,提供了访客留言本、访客计数器等简单的功能。以后越来越多的网站使用PHP,并且强烈要求增加一些特性,比如循环语句和数组变量等。在新的成员加入开发行列之后,1995年,PHP 2.0发布。第二版定名为PHP/FI(Form Interpreter)。PHP/FI加入了对mSQL的支持,从此建立了PHP在动态网页开发上的地位。到了1996年年底,有15000个网站使用PHP/FI;到了1997年,使用PHP/FI的网站超过5万个。1997年开始了第三版的开发计划,开发小组加入了Zeev Suraski及Andi Gutmans,第三版就定名为PHP 3。
• 【PHP 4】
2000年,PHP 4.0问世,其中增加了许多新的特性。PHP 4.0整个脚本程序的核心大幅更动,让程序的执行速度满足更快的要求。最佳化之后的效率较传统CGI或者ASP等程序有更好的表现,而且有更强的新功能、更丰富的函数库。无论用户是否接受,PHP都将在Web CGI的领域掀起巅覆性的革命。对于一位专业的Web Master而言,它也是必修课程之一。
• 【PHP 5】
PHP 5的功能更加完善,很多缺陷和BUG都被修复。在PHP 5中,理想的选择是PHP 5.2.X系列。其兼容性好,每次版本的升级带来的都是安全性和稳定性的改善。而如果产品是自己开发使用,PHP 5.3.X在某些方面更具优势,在稳定性上更胜一筹,增加了很多PHP 5.2所不具有的功能,比如内置php-fpm、更完善的垃圾回收算法、命名空间的引入、sqlite3的支持等。它是部署项目值得考虑的版本(本书中使用PHP 5版本)。
• 【PHP 6】
时至今日,PHP的版本已经更新到PHP 6。PHP 6是一个理想化的产品,目前仍没有走上生产线。但是,其更新的特性和功能还是很有吸引力的。PHP 6除了增加新的特性,一些会给系统带来不稳定因素和安全隐患的特性也将被取消。
1.1.4 HTML嵌入式的脚本语言
PHP程序代码是嵌入HTML文件中的。例如,这里有一个hello.php文件,关键代码如下。
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>HTML嵌入式的脚本语言</title> </head> <body> 输出一行文字: <br /> <?php echo "你好PHP"; ?> </body> </html>
上述代码分析如下:
“输出一行文字”是普通的文本信息。PHP文件中的文本信息不会被PHP预处理器处理,而直接被Web服务器输出到Web浏览器。<br />是HTML中的换行标记,同样不会被PHP预处理器处理,在被Web浏览器解析之后会产生一个换行。
“echo "你好PHP";”是PHP代码。在页面中的所有PHP代码都要经过PHP预处理器解释执行。PHP预处理器会将这条代码解释为文本信息“你好PHP”,然后将文本信息输出到Web浏览器,从而在Web浏览器中显示这些文本信息。
说明
(1)“<?php”和“?>”分别是PHP的开始标记和结束标记。
(2)PHP程序文件的扩展名通常使用“.php”。