PHPWeb程序的设计教程与实验复习题答案.docx
《PHPWeb程序的设计教程与实验复习题答案.docx》由会员分享,可在线阅读,更多相关《PHPWeb程序的设计教程与实验复习题答案.docx(25页珍藏版)》请在冰豆网上搜索。
PHPWeb程序的设计教程与实验复习题答案
《PHPWe程序设计教程与实验》习题答案
第1章参考答案.1
第2章参考答案.3
第3章参考答案.5
第4章参考答案.5
第5章参考答案.6
第6章参考答案.7
第7章参考答案.10
第8章参考答案.10
第9章参考答案.10
第10章参考答案.11
第11章参考答案.13
第12章参考答案.15
第13章参考答案.16
第14章参考答案.17
第15章参考答案.17
第1章参考答案
习题1
1.因特网和万维网之间有什么联系和区别?
答:
Web是WorldWideWeb的简称,又称为万维网、WWW或3V,它是在Internet上运
行的遍及全球的多媒体信息系统,这些信息有多种类型,包括文本、图形、图像、声音和视频等。
Internet,亦称因特网或互联网,它是由各种不同类型和规模的、独立管理和运行的主机或计算机网络组成的一个全球性特大网络。
2.什么是客户机/服务器结构?
答:
客户机/服务器结构是服务器和客户机组成的计算机网络,其中,服务器(Server)是为别的计算机提供共享资源的计算机,客户机(Client)是请求和使用服务器资源的计算
机。
3.什么是URL?
URL由哪几个部分组成?
答:
统一资源定位器(UniformResourceLocator,URL是为Internet的信息资源位置而设的一种编址方式,它指定Internet资源位于哪台计算机的哪个文件夹以及文件名。
URL由传输协议、主机名、路径和资源文件名组成,其格式如下:
传输协议:
//主机IP地址或域名[:
端口]/文件夹路径/文件名
4.本地主机(localhost)的IP地址是多少?
请说明它有哪些用途?
答:
本地主机(localhost)的IP地址是127.0.0.1。
利用本地主机IP地址,可以把本地主作为服务器,同时也作为客户机,为开发网络应用程序和WEE应用程序提供了方便的测试环境。
5.什么是主页?
网页文件的扩展名有哪些?
答:
主页(HomePage)是进入一个网站首先看到的页面。
网页文件的扩展名有.htm、.html。
6•什么是Web服务器?
它的主要作用是什么?
答:
Web服务器是服务器端的计算机和运行在它上面的Web服务器软件的总和。
它的主
要作用是负责监听Web浏览器发送到服务器的Web页面请求,并提供相应的Web页面,通过Internet回传到客户端的浏览器。
7.什么是通信协议?
答:
通信协议是计算机网络中的计算机之间进行数据传输所规定的约定。
&什么情况下需要在URL中指定端口号?
答:
当服务器程序监听的端口号改不使用默认端口号,而是改用其他端口号时,必须在URL的主机域名后附加相应的端口号。
9.如何理解基于数据库的Web体系结构?
它可分为哪两种模式?
答:
基于数据库的Web体系结构是服务器/浏览器模式的结构,它一般是三层结构:
客户端是一个浏览器,它将对页面的请求发送给Web服务器,显示返回的HTML文档;Web服
务器通过执行CGI程序或脚本程序,从数据库获取部分或者全部内容而生成的动态网页;后台数据库作为第三层。
根据动态网页程序执行位置的不同分为客户端动态Web模式和和服务器端动态Web模
式。
10.什么是客户端脚本程序?
常见的客户端脚本语言有哪些?
答:
客户端脚本程序是在客户端浏览器上解释执行的程序。
常见的客户端脚本语言有
JavaScript、VBScript。
11•什么是服务器端脚本程序?
常见的服务器端脚本语言有哪些?
答:
服务器端脚本程序是在服务器端解释执行的程序。
常见的服务器端脚本语言有ASP
PHRJSP、CGI、ASP.NET等。
12.如何理解基于XML的Web体系结构?
答:
基于XML的Web体系结构如下图。
客户端可以是浏览器,也可以是应用程序。
服务器向客户端传送的内容可以是XML文档或者HTML文档。
因此,定义和处理存储在XML文
件的数据的方法有两种:
一种是在服务器端处理XML另一种是在客户端处理XML
在服务器端处理XML的方法中,Web服务器运行一个Web应用程序,从数据库中提取数据,把获取的数据转换成XML格式,然后用XML与HTML的转换程序把XML数据转换成HTML文件格式。
这样HTML文件就可以通过网络传输到用户的浏览器。
在客户端处理XML的方法中,Web服务器把数据库的数据转换成XML格式,然后通过网络把XML文件传送到客户端,由客户端的浏览器或程序对XML文档进一步处理。
浏览器通过运行XML分析器(XMLParser),解释和翻译XML标记,使浏览器能够显示格式化的Web页面。
在基于XML的Web体系结构中,客户端和服务器是相对的。
—'冊L文裆■^Internet>
13.TCP协议和IP协议各有哪些主要作用?
答:
TCP协议的主要作用是负责应用进程之间的端到端通信服务,完成端到端的差错控制和流量控制,保证传输无差错,保持顺序,无丢失或无重复等。
IP协议负责处理互联网中计算机之间的通信,向传输层提供统一的数据包。
14.所有连接到因特网的计算机都采用什么协议?
答:
所有连接到因特网的计算机都采用TCP/IP协议。
16.什么是超文本?
答:
超文本是一种联机信息表示和管理技术,它把网页中的文本或图形与地理上分散存
储的信息相互链接,这种相关信息的链接被称为“超链接”。
17.在何处执行CGI程序?
在何处执行JavaScript程序?
在何处执行Javaapplet程序?
答:
CGI程序在Web服务器端执行。
JavaScript程序、Javaapplet程序都在浏览器上解释执行。
18.什么是HTTPHTTP协议的主要功能有哪些?
答:
HTTP即超文本传输协议。
HTTP是专门为Web设计的一种网络协议,位于TCP/IP
协议的顶层。
HTTP协议负责Web服务器和浏览器之间的Web文档的传输。
19.DNS域名服务器的任务是什么?
答:
DNS域名服务器的任务是自动地将域名转换为与之对应的IP地址,然后把IP地址
返回给应用程序,应用程序再利用返回的IP地址与对应的主机连接。
20.什么是静态网页?
什么是动态网页?
答:
静态网页就是其内容由一些HTML!
弋码组成的的网页。
这些HTML弋码可以直接通过文本编辑器输入,并保存为.htm或.html文件。
动态网页就是网页中加入程序或脚本,采用ASPPHPCGI、ASP.NETJSP等技术动
态生成的页面。
第2章参考答案
习题2
1.HTML文档的组成结构由哪几部分构成?
答:
一个完整的HTML文档通常由以下三部分组成:
标记、
标记和
标记。
标记定义HTML文档的开始和结束。
标记用来说明文档标题以及该页面的其他信息,它构成HTML文档的头部信息。
标记指定HTML文件的主体内容,即要在浏览器客户区中显示的内容。
文档主体,正文部分
2.HTML文档的head容器元素通常包含哪几个元素?
答:
head容器元素通常包含以下元素:
title元素、link元素、meta元素、base元素、
script元素。
3.HTML文档的body容器元素通常包含哪几个元素?
答:
body容器元素通常包含以下元素:
text
定义标题。
#表示标题的层次(较小的数字标记较重要的标题),text表示标题的文本
标记文档主体中两个段落之间的间隔
把图像插入到文档中,其中scr属性给岀图像地址
text
定义超文本链接属性,并将结果返回给用户浏览器
放置一个横穿浏览器窗口的水平线
text标志一个作为邮递地址或电子邮件地址的文本块
在文本中强制换行
!
--定义表格结束-->
7.HTML表格的属性设置一般有哪些?
答:
表格的属性设置有:
width和height属性一一分别指定表格一个固定的宽度和长度
border属性一一设定表格的边框风格cellspacing属性指定表格间线的宽度。
align属性一一指定表格的单元格数据的水平排列方式。
可分为三种:
居左(left)、
居右(right)和居中(center)。
valign属性指定单元格上下排列的设置,分为:
上齐(top)、居中(middle)、下齐
(bottom)和基线(baseline)。
&HTML表单的基本结构是什么?
答:
HTML表单标记的基本结构如下:
表单主体
--一般用于定义表单的常用控件-->
9.HTML表单的几种常用控件分别是什么?
答:
HTML表单的常用控件有:
单行文本框、多行文本框、命令按钮、单选按钮、复选
框、下拉列表框、隐藏域等。
10.DreamweaverMX2004拥有哪些新功能?
答:
DreamweaverMX2004拥有如下新功能:
(1)简洁高效的设计和开发界面。
(2)“插入”栏的改进。
(3)用户界面改进。
(4)起始页。
(5)保存桌面选项。
(6)完全支持Unicode。
(7)安全FTP:
使用户能够完全加密所有文件传输。
(8)新式的页面布局和设计环境。
(9)增强的CSS功能。
(10)动态跨浏览器验证。
11.如何定义Dreamweaver的本地站点?
答:
参见教材P30-P33(2.6.2小节)。
第3章参考答案
习题3
选择题
1、
CDE
8、C
15、
A
2、
A
9、D
16、
B
3、
D
10、A
17、
C
4、
B
11、B
18、
D
5、
A
12、B
19、
C
6、
B
13、A
20、
E
7、
B
14、C
第4章参考答案
实验4
1、参考相关Linux版本软件的说明来安装(略)
2、参见4.2节
3、参见4.3节
习题4
1、参见4.1节P72
2、参见P74-75
3、在Windows的DOS提示符下,执行ipconfig/all命令,可以查看本机的IP地址等信息
4、127.0.0.1称为本地回环地址,主要作用有两个:
一是测试本机的网络配置,能PING通
127.0.0.1,说明本机的网卡和IP协议安装都没有问题;另一个作用是某些SERVER/CLIENT的应用程序在运行时需调用服务器上的资源,一般要指定SERVER勺IP地址,但当该程序要
在同一台机器上运行而没有别的SERVER寸就可以把SERVER勺资源装在本机,SERVE啲IP
地址设为127.0.0.1也同样可以运行。
5、在Windows下,构建PHP运行环境的的方法有两种:
一种是IIS+PHP;另一种是Apache+PHR
而在Linux环境下,构建PHP运行环境的的方法有一种:
Apache+PHP
6、Apache是Web服务器软件,PHP是一种服务器端脚本解释语言,必须在Apache运行后才能执行,可由Apache将PHP作为其自身的一个子进程模块来运行,也可以作为外部进程,
由Apache调用外部进程PHP来解释PHP程序。
MySQL是数据库服务器软件,无需Apache和PHP的运行支持环境。
但是,为了让PHP
程序能够访问MySQL数据库,需要在PHP的配置文件中装载MySQL解释模块。
7、要让Apache能够执行PHP程序,修改Apache的配置文件httpd.conf。
Windows环境的httpd.conf文件内容增加以下指令(CGI方式):
ScriptAlias/php/"c:
/php/"
AddTypeapplication/x-httpd-php.php
Actionapplication/x-httpd-php"/php/php-cgi.exe"
或者以Apache模块方式安装PHP,httpd.conf文件增加以下指令:
LoadModulephp5_module"c:
/php/php5apache2.dll"
AddTypeapplication/x-httpd-php.php
在Windows环境下,要让PHP程序能够访问MySQL数据库,需要修改PHP的配置文件
php.ini,增加以下指令:
extension=php_mysql.dll
8、要让Apache能处理扩展名为.php5、phtml的程序,在Apache的配置文件httpd.conf中增加以下命令:
AddTypeapplication/x-httpd-php.php5.phtml
第5章参考答案
习题5
1、在HTML文档中嵌入PHP代码的常用方法有三种
(1)
。
。
。
。
。
?
>
(2)
php。
。
。
。
。
;?
>
(3)
2、PHP5支持整数、浮点数、布尔数、字符串、数组和对象等数据类型。
3、利用表单传送数据给服务器时,需要将表单的action属性值设置为服务器端的某一个程序,女口PHPASPJSP程序。
4、PHP的流程控制结构有分支结构、循环结构、顺序结构。
分支结构的语句有if语句、switch
语句;循环结构的语句有while语句、for语句、do…while语句。
5、break语句在循环语句中的作用是退出当前层循环。
continue语句在循环中的作用是跳过当前循环体的后续语句,进入下一轮循环。
6、PHP函数的参数传递方式有三种:
按值传递参数、引用传递和默认值参数。
采用按值传递参数时,函数内部改变参数的值,不影响函数外相应的实际变量值。
采用引用传递方式时,由于传递的是实际变量的地址给参数,因此函数内改变了参数的值,会影响相应的实际变量的值。
默认值参数用来指定参数的默认值,当调用时没给出默认值参数的实际数据,则使用默认值作用该参数的值。
第6章参考答案
习题6
1、一个面向对象的应用程序实际上就是由一系列的相关对象所构成的。
对象是封装了相应
属性(Property)与方法(Method)的实体(Entity)。
其中,属性描述了对象的静态特征,即对象的数据或状态;而方法则描述了对象的动态行为,即对象所能执行的功能或操作。
应用程序中各对象之间的联系是通过传递消息(Message)来实现的。
如果要让对象执行某个
操作,那么就必须向其发送一个消息;待对象接收到消息后,便可调用相应的方法去执行指定的操作。
面向对象编程的主要特征是封装性、继承性、多态性。
2、在PHP中,使用关键字class创建一个类。
类的创建格式为:
classclassname
{
//属性定义
var$propertyname_1;
var$propertyname_2;
var$propertyname_n;
//方法定义
functionmethodname_1(...)
{...}
functionmethodname_2(...)
{...}
functionmethodname_m(...)
{...}
}
3、创建对象通常又称为实例化一个类,在PHP中需使用关键字new来实现,其基本格式为:
$objectname=newclassname;
其中,objectname为对象名,classname为类名。
4、访问对象的属性与方法,需使用“->”运算符,其基本格式为:
$objectname->propertyname
$objectname->methodname(...)
5、构造函数是类中的一个特殊方法,在创建对象时被自动地调用。
在PHP5中,构造函数的
名称则是固定的,即必须为__construct。
构造函数的定义格式为:
function__construct(参数表)
{语句组
}
6、析构函数是在销毁对象时被自动调用的函数。
通常,可在析构函数中执行一些在销毁对
象前所必需完成的操作。
在PHP5中,则可以使用析构函数,且其名称是固定的,即必须为
__destruct。
析构函数的定义格式为:
function__destruct(参数表)
{
语句组
}
7、在PHP5中使用访问控制关键字public、private与protected,控制类属性的访问范围。
使用关键字public所声明的属性,可以在类的内部与外部进行访问,也可以被继承。
这是类属性的默认访问方式。
使用关键字private所声明的属性是私有的,只能在类的内部进行访问;而使用关键字protected所声明的属性则是保护的,只能在类的内部及其子类中进行访问。
8、在类中创建方法时,若在关键字function前未使用其他任何关键字,则该方法是公共的,
可在类的内部与外部直接进行调用。
在PHP5中可以使用public、private与protected访
问控制关键字,控制类方法的访问范围。
类方法的访问控制与类属性的访问控制是相似的。
9、继承是面向对象编程的主要特征之一。
在PHP中,只支持单重继承,即一个子类只能有一个父类。
通过继承而生成的子类,将自动拥有父类的有关属性与方法,还可声明新属性或定义新方法。
类的继承使用关键字extends来定义,其基本格式为:
classchildclassnameextendsparentclassname
{
//新属性
var|public|private|protected$newpropertyname_1;
var|public|private|protected$newpropertyname_2;
var|public|private|protected$newpropertyname_n;
//新方法
[public|private|protected]functionnewmethodname_1(...)
{...}
[public|private|protected]functionnewmethodname_2(...)
{...}
[public|private|protected]functionnewmethodname_m(...)
{...}
}
10.在PHP中,如何实现方法的重载?
10、方法的重载,是指在子类中重新定义父类中的同名方法。
方法的重载体现了面向对象编程的多态性特征。
11.在PHP中,如何实现对象的克隆?
11、对象的克隆是指为已存在的对象建立副本。
为了实现此类应用,PHP5提供了一个特殊的克隆函数__clone()。
在默认情况下,在克隆对象时将建立一个与原对象具有相同属性与方法的对象。
12、对象的串行化是指将对象转化为一个字符串。
对象的反串行化是指将对象的串行化字符串重新还原为原来的对象。
在PHP中使用serialize。
函数,将对象名串行化,返回值为指定对象被串行化后的字
符串。
使用unserialize()函数来实现对象的反串行化,其参数为某对象的串行化字符串,返回值为重新组织好的对象。
13、类的静态成员包括类的静态属性与静态方法。
与一般的类成员不同,类的静态成员与对象(类的实例)无关,而只与类本身有关。
静态成员类似于全局变量,由该类的所有实例共享;而静态方法则类似于全局函数,无需创建该类的实例即可直接进行调用。
在PHP中,静态成员是使用关键字static来进行声明的。
对于静态成员,其访问方式
也与一般的类成员不同。
在类的内部,静态成员应通过特殊类self来进行访问,其基本格式为:
self:
:
$propertynameself:
:
methodname(...)
在类的外部,静态成员则应通用类名来进行访问,其基本格式为:
classname:
:
$propertyname
classname:
:
methodname(...)
14、抽象方法是指使用关键字abstract定义的尚未实现(即没有任何代码)且无任何参数的以分号“;”结束的方法。
抽象类则是指使用关键字abstract定义的包含有一个或多个抽象方法的类。
抽象类是不能被实例化的,但允许被继承。
通过继承抽象类,可以生成相应的子类,并
在其中全部或部分实现有关的抽象方法。
抽象方法被实现后便成为一般的方法,而抽象类中所有的抽象方法均被实现后便成为一般的可被实例化的类。
通常,可将抽象类作为其子类的
模板来看待,而其所包含的抽象方法则可作为相应的一般方法的占位符来看待。
15、在PHP5中,接口相当于一种特殊的抽象类,即只有一个抽象方法而无其他任何内容的抽象类。
但与抽象类的定义不同,接口是使用关键字interface来进行定义的。
定义了接口后,即可在创建类时使用关键字implements实现接口,并在类中为各方法编写具体的功能代码。
16、_call()函数是PHP5所提供的一个特殊函数,可在调用不存在的方法时自