1.1 一起来认识PHP
PHP是“PHP:Hypertext Preprocessor”的缩写,译为“PHP:超文本预处理器”,这是一种在服务器端执行的脚本语言。PHP的语法融合了C、Java和Perl等编程语言的语法精髓,使用PHP可以开发动态的、交互式的,甚至是由客户定制的动态网页,它能把Web网站变成真正的Web应用。
1.1.1 PHP语言的发展史
PHP是由Rasmus Lerdorf在1994年秋天设计出来的,最初的目的是为了在主页上直接和观看网页的人进行互动。1997年,一些开发人员组成了专门研究PHP语言的小组,从此PHP就向专业化编程语言迈进了一大步。
1998年PHP 4正式发布,Zeev和Andi对整个脚本程序的核心做了大幅改动,编译的过程使用了Zend引擎技术,使程序能更加快速地执行。另外,新增加的企业特性也使PHP 4能够更广泛地应用于大型网站与系统的开发。
2004年,Zeev和Andi开始重新设计PHP 4面向对象部分的核心代码,并于同年正式发布了PHP 5。自此,PHP 5拥有了成熟的面向对象编程体系,适合于大型项目的开发设计。不仅如此,PHP 5还对XML和Web服务等技术提供了支持。
目前,PHP 6已经进入准备阶段,不久即将发布。PHP 6将完全向前兼容,新版本会添加更多方便实用的系统内置函数,面向对象机制将会更加完善,运行速度也会变得更快。
1.1.2 为什么选择PHP
PHP语言与其他脚本语言相比,在执行效率、开发周期、稳定性、可移植性、函数支持等许多方面都具有较大的优势,所以越来越多的用户开始选择使用PHP语言来架构Web网站。PHP的优点主要体现在如下几个方面:
● 具有良好的跨平台性,支持Windows、Linux、Macintosh、FreeBSD、OS2和UNIX等多种操作系统平台。
● 能够与多个Web服务器兼容,比如,Apache、MS IIS、Netscape Server等。
● 支持几乎所有的主流与非主流数据库,支持JDBC,提供MySQL、Oracle、Sybase和MS SQL等多种数据库访问接口。
● 开发成本低,使用PHP、Apache服务器、MySQL数据库和Linux操作系统这一组合,用户就可以低成本地构建一个中小型的网站系统。
● PHP的语法来源于C语言的编程风格,简单易用,系统内部函数丰富,使复杂的Web开发变得十分轻松自由。
● 拥有成熟的开发工具,比如,在Windows平台下可以使用Zend Studio等,在Linux平台下可以使用Eclipse等。
● 支持模板化开发,实现程序逻辑与用户界面的完全分离,开发周期短、效率高。
● 同时支持面向过程与面向对象两种风格的开发,适用于各类开发人员。
● PHP编译和执行时采用Zend引擎技术,所以开发的产品性能稳定、速度快。
● 目前主流技术都支持PHP,如WebService、Ajax、XML等,满足开发的需求和应用。
● 完全免费和开源,升级快,并有很多成熟的框架,如FleaPHP、ZendFrameWork、MooPHP、ThinkPHP和CakePHP等。
1.1.3 PHP的工作原理
一个简单Web应用的工作流程是:用户通过浏览器向服务器发出请求;服务器根据请求URL地址找到指定页面,并将该页面及其他处理信息返回给浏览器;浏览器得到返回信息后将页面信息呈现给用户。
基于PHP开发的Web应用的工作流程与前面介绍的流程相似,只不过增加了一些额外的处理流程。在服务器接收请求以并找到指定页面文件后,会对该PHP文件进行代码编译,数据交互等操作。然后再将处理后的信息发送到浏览器。PHP的工作原理如图1-1所示。
图1-1 PHP的工作原理
如果服务器不支持PHP,在通常情况下,Web服务器会直接将超文本文件传送到客户端的浏览器作为对HTTP请求的应答;如果服务器支持PHP,则在服务器端响应一个PHP文件请求,首先在一个PHP文件内将HTML编码直接传送到客户端的浏览器上,而内嵌的PHP程序却是先被Web服务器解释执行,然后将解释执行后的信息以HTML的形式传送到客户端的浏览器中。