有很多很棒的理由让你选择用PHP来编写计算机应用。也许你想学习PHP只是因为你需要将一些有趣的元素拼凑成一个小网站。也许你在工作中用到PHP而且你必须提高效率。这一章介绍了PHP在神秘的网站开发中起到的作用和发展背景:它可以做什么和为什么它做的这么好。你也可以在这一章获得对PHP的第一印象并且在实践中了解它。
PHP在web世界中的位置
PHP是在搭建网站应用中用的最多的编程语言。与提供给个人使用的PHP桌面应用不同,它主要运行在服务器上,供大量用户通过运行在自己电脑上的浏览器访问。这一节将PHP在服务器与浏览器的交互中起到的作用。
当你坐在你的电脑前,用诸如火狐或者Safari的浏览器拉取web页面,你的电脑将和另外一台主机通过因特网进行一些会话。这个会话以及页面是如何通过这个会话呈现到你面前的,展示到了插图1.1中。
以下是插图中所展示的步骤和顺序。
1.你在浏览器地址栏输入www.example.com/catalog.html。
2.浏览器通过因特网向名为www.example.com的主机发送请求/catalog.html页面的请求。
3.Apache Http Server----就是运行在www.example.com的主机上的一个应用,获取到请求信息并且从硬盘上读取到catalog.html文件。
4.Apache将文件中的信息作为对浏览器请求的回复,并通过因特网发送回你的电脑。
5.你的电脑将根据页面中的HTML tag将内容渲染并呈现到屏幕上。
浏览器每次请求http://www.example.com/catalog.html,web服务器都会把来自同一catalog.html文件中的内容发送回浏览器。只有在这个文件被人修改的情况下,服务器的回复才会发生变化。
当PHP加入进来以后,服务器需要在会话过程中多做一些工作,图1.2展现了当浏览器请求PHP页面时所发生的事件。
以下是请求PHP页面时会话的流程。
1.你在浏览器地址栏输入www.example.com/catalog/yak.php.
2.浏览器通过因特网向名为www.example.com的主机发送一条信息用以请求/catalog/yak.php页面.
3.运行在www.example.com主机上的Apache HTTP Server程序,获取到浏览器发送的信息后询问PHP引擎(另一个运行在主机上的程序):"/catalog/yak.php这逼长啥样啊?".
4.PHP引擎从硬盘读取yak.php文件.
5.PHP引擎运行yak.php中的程序指令----可能是一些跟数据库程序(比如MySQL)的数据交互。
6.PHP引擎拿到yak.php的程序输出并且将其发送回Apache Http Server,作为对"/catalog/yak.php这逼长啥样啊?"的回复.
7.Apache Http Server将从PHP引擎获取到的页面内容通过因特网发送回你的电脑,作为对浏览器请求的回复。
8.浏览器根据HTML tags渲染页面内容后将页面呈现到屏幕上。
PHP是一种编程语言。服务器上的一些应用读取你的PHP程序,也就是用这种编程语言写的一些指令,然后根据指令来做出一些操作。PHP引擎根据你所写的指令来操作。程序员们提到"PHP"时通常同时指的这种编程语言以及PHP引擎。本书中,"PHP"特指"PHP编程语言","PHP引擎"指的是根据你写的PHP程序中的指令来生成也页面的一种工具。
假如把PHP(PHP编程语言)比作英语,PHP引擎则像是讲英语的人。英语定义了不同的单词并且有很多单词组合,当被讲英语的人听和读时,英语被翻译成不同的意思,指导这个人做出不同的动作比如感到尴尬、去商店买牛奶,或者穿上裤子。你用PHP(PHP编程语言)写的PHP程序则吩咐PHP引擎去做一些诸如与数据库交互、生成web页面或者展示一张图片等事务。
未完待续。。。