按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
计算机A 把自己的文件夹a 共享,然后在网络上找到A ,则可以下载a,即自己对自己提供了服务,自己请求并
响应了服务。
客户机/服务器的这种计算机间的协作方式,称作C/S 方式,或C/S 架构。
C/S 程序分为两部分:服务器端部分和客户机端(以后简称客户端)部分,分别称为服务器端程序(或服务程序)
和客户端程序(或客户程序)。对于客户端程序,对每一个客户机,也都需要分别安装,这一点与单机程序的分
发相同,也很麻烦。但是,安装好了客户端程序后,就可以通过通信线路与服务器交互,或通过服务器,与其他
客户机通信。典型的例子是大家常用的聊天程序QQ,如图3 所示。
PHP 讲义 第 6 页 共 90 页
…………………………………………………………Page 7……………………………………………………………
图3 C/S 程序QQ 的工作原理
(4 )浏览器/服务器程序工作原理
若通过客户机中的浏览器(Browser),向服务器发出请求,接收其响应的结果,那么,这时,我们称这样的协
作方式为B/S 方式,或B/S 架构,其工作原理如图3 所示:
图4 浏览器/服务器程序的工作原理
这时,客户端程序就是浏览器,而浏览器的安装是随着操作系统的安装完成的,不需要用户额外安装。大多数情
况下,大多数人用的操作系统是Windows 操作系统,对他们而言,使用B/S 程序(如上网看新闻,收发电子邮
件),可不需要安装专门的客户端程序,直接在浏览器中操作即可。这使得B/S 程序的维护十分方便,因为不用
管客户端程序,只要维护好服务器端程序即可。
人们说当今是一个网络时代,实际上着重指得是互联网时代,也就是Web 的时代。人们使用这种B/S 程序比较
多,是造成这种叫法的一个重要缘故。
本课程中的Web 程序,就是指这种B/S 程序。
(5)C/S、B/S 中服务器的组成
服务器,是担负服务任务的机器。这些服务任务一般专门的软件来完成。一般地,把具有某种服务功能的服务器
软件及其所在的机器,都统称XX 服务器(XX 表示某种具体服务)。这些软件可以集中于一台机器中(如图5),
这样的机器可以称为集中式服务器;也可以单独存在于某台机器中(如图 6 ),这样的机器可以称为独立式服务
器,多个独立式服务器可组成服务器群或矩阵(台湾词为“阵列”)。
图5 集中式服务器
PHP 讲义 第 7 页 共 90 页
…………………………………………………………Page 8……………………………………………………………
图6 由独立服务器组成的服务器群
按照服务任务,常见的几种服务器软件如表1 所示。
表1 几种常见服务器软件
服务器软件类别 服务器软件举例 功能
接收来自浏览器的任务请求,分派任务给其他服务器软件,接
Apache 、IIS、PWS
Web 服务器软件 收其他服务器软件对任务的处理的结果,将该结果返回给浏览
等
器
接收来自 Web 服务器软件分派给自己的服务器端脚本执行任
服务器端脚本解释软件
务;进行脚本的语法分析,若语法有错误,则向Web 服务器返
(一般与 Web 服务器软 PHP、ASP 等
回出错信息,否则,执行脚本,将解析结果/执行结果返回给
件同处于同一台机器上)
Web 服务器软件
MySQL 、Oracle 、 接收来自其他服务器软件的数据处理任务请求,执行该任务,
数据库服务器软件
MS SQL Server 等 将执行结果返回给请求者
MS Exchange、 接收来自其他服务器软件的邮件处理任务请求,执行该任务,
电子邮件服务器软件
Sendmail 等 将执行结果返回给请求者
服务器端脚本:用服务器端编程语言编写的程序。
服务器端编程语言:只运行在服务器端,被服务器所解释和执行的编程语言,如PHP 语言。
(6 )B/S 程序工作的具体过程
说明:在以后的B/S 程序图示中,通信线路不再特别表示。
图7 B/S 程序工作过程示意图
(7)PHP 程序工作的具体过程
图8 PHP 程序工作过程示意图
具体过程是Apache 、PHP、浏览器之间的协作过程:
用户通过浏览器向服务器请求 PHP 文件(如在地址栏输入:http://211。64。40。187/index。php),Apache 在服务
器上的用户文档发布目录下查找浏览器所请求的PHP 文件,若找不到,则向浏览器返回错误信息,否则,将其
PHP 讲义 第 8 页 共 90 页
…………………………………………………………Page 9……………………………………………………………
提交给PHP 解释器解释执行,PHP 解释器对该 PHP 文件进行语法分析,若发现语法错误,则经Apache 返回
错误信息(以浏览器能识别的代码表示)到浏览器,否则执行该PHP 程序(可能包含对数据库MySQL 的操作),
将PHP 程序执行结果(以浏览器能识别的代码表示)经Apache 返回到浏览器,浏览器对返回的结果进行解释、
执行,执行的结果显示在浏览器窗口中。
如果浏览器所请求的文件不是PHP 文件,而是HTML 文件(。htm 文件)或JavaScript 文件(。js 文件),该过程
将简化:Apache 在服务器上的用户文档发布目录下查找浏览器所请求的HTML 文件或JavaScript 文件,若找不
到,则向浏览器返回错误信息,否则,将其返回给浏览器,浏览器对返回的结果进行解释、执行,执行的结果显
示在浏览器窗口中。
2。PHP 简介
PHP,即“PHP: Hypertext Preprocessor”,是一种被广泛使用的开放源代码多用途脚本语言,尤其适用于 Web
开发并可以嵌入到 HTML 中去。其语法利用了 C ,Java 和 Perl ,非常容易学习。该语言的主要目标是让 Web
开发人员可以很快写出动态生成的网页,但 PHP 的功能远不止如此。
一个简单的PHP 程序:
该程序运行的结果是在网页上输出了一个内容为hello;world 的字符串。
PHP 是一种语法简单、功能强大的网络编程语言。在语法格式上,PHP 借鉴了广泛流行的C、Java 和 Perl 等
编程语言的特点,非常类似于C 语言,但比C 语言更简单,易学和易用,因此特别适合于学习过C 语言,有志
于网络编程的人学习和使用。
在功能上,它提供了丰富的函数库,支持复杂字符串处理,正规表达式和图形处理,可根据用户请求将服务器的
数据轻松地产生动态网页,支持目前几乎所有流行的数据库系统,如Oracle、SQL Server、MySQL、mSQL、
Informix、SyBase、ODBC、PostgreSQL 以及dBase 等。在在可移植性上,PHP 程序可在Windows 下快速开
发,代码甚至不加修改即可运行在Unix、Linux 上。
本课程中的 PHP 程序,就是指使用这种 PHP 语言编写的程序。它只能被服务器所解释执行,只能运行于服务
器端,用户在浏览器中看到的,只是经服务器解释后,返回给浏览器的HTML 等客户端代码(可从浏览器的“查
看…》源文件”菜单中看到),这些代码是由浏览器解释执行的,执行的结果,显示在浏览器窗口中,形成网页。
所以,在客户端,看不到PHP 代码,这也是PHP 语言写成的代码比较安全的一个原因。
第二节 PHP 的开发环境的搭建
从图8 中可以看出,要使PHP 程序能够正常工作,必须:
(1) 选用合适的程序编辑软件,以便进行程序的编写;
(2 ) 为其在服务器上配置好一个运行环境:安装和配置好以下软件,使它们能够正常协作:Apache 、PHP、
MySQL,以便进行程序的测试和运行。
以上两点构成一个完整的PHP 开发、测试和运行环境。其中,(1)的3 个软件部署在服务器上,(2 )的软件部
署在客户机上。为方便大家学习和理解整个环境的搭建过程,本课程的实验条件是人手一机,每台机器既作服务
器又作客户机,整个环境的搭建工作可在一台机器上完成。
以上两点构成一个完整的PHP 开发、测试和运行环境,其根本目的是为了学习使用PHP 语言进行Web 程序编
写和软件开发,所以,我们把这个环境的搭建工作称之为PHP 开发环境的搭建。
1。程序编写,软件开发工具软件的选用
(1)有关工具软件
PHP 讲义 第 9 页 共 90 页
…………………………………………………………Page 10……………………………………………………………
这些工具软件用于编写,修改源程序文件。我们的源程序文件都是ASCII 码文件(纯文本文件),所以,只要是
能够处理纯文本的工具软件,都可选用。
常用的编辑软件有:记事本。为了提高效率,常使用一些专业工具软件,如 UtraEdit,DreamWeaver,不建议
使用FrontPage (它对PHP 的支持不好)。
〃Y 记事本:常用于简单的代码编辑。
〃Y UltraEdit10 简体中文版:短小精悍,代码编辑功能强大,编程高手的利器
〃Y Dreamweaver MX 中文版:图形化编辑环境,速度慢,功能多,常用于复杂