PHP程序设计习题答案_第1页
PHP程序设计习题答案_第2页
PHP程序设计习题答案_第3页
PHP程序设计习题答案_第4页
PHP程序设计习题答案_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.第1章 php开篇 习题一、 填空题1. apache的httpd服务程序使用的是【80 】端口。2. 在进行软件开发时有两种基本架构,b/s架构和【c/s 】架构。3. url的英文全称是【uniform resource locator】,中文名称为【统一资源定位符】。4. 【http 】协议是计算机硬件与软件之间数据交换的格式。 5. 【http 】表示传输数据所使用的协议,【 www 】表示要请求的服务器主机名。二、 判断题1. 使用php写好的程序,在linux和windows平台上都可以运行。()2. php可以支持mysql数据库,但不支持其它的数据库。()3. php有很多流

2、行的mvc框架,这些框架可以使php的开发更加快捷。()4. zend studio是php中常用的ide(集成开发环境)。()5. 进行php程序开发时,可以借助软件和工具来提高效率。()三、 选择题1. 下列选项中,不是url地址中所包含的信息是( d )。 a. 主机名 b. 端口号c. 网络协议 d. 软件版本2. php是一种( a)的编程语言。a. 解释型b. 编译型c. 两者都是 d. 两者都不是3. php是个网站开发中非常流行的脚本语言,其流行的原因不包含( c )。a. 易学 b. 易用c. 易调试 d. 易扩展4. php与linux、apache和mysql一起共同组成

3、了一个强大的web应用程序平台,下列选项中为该平台简称的是(b )。a. wampb. lampc. lnmpd. wnmp5. 在下列选项中,哪些不属于php的突出特点( b )。a开源免费b. 开发成本高c. 跨平台性d. 支持多种数据库四、 简答题1. 请简要说明php的突出特点是什么?1. 开源免费2跨平台性3.面向对象4.支持多种数据库5.快捷性.精品.第2章 基本语法 习题一、 填空题1. 任何一个程序文件的php代码的开始和结束都要使用【 ”进行标记。2. php中,多行注释以【 /* 】开始,以【*/ 】结束。3. php标识符允许包含字母、【数字 】、【下划线 】字符。4.

4、在php中用于实现继承的关键字是【extends 】。5. 如果我们想把错误隐藏起来,可以使用错误控制运算符【 】。二、 判断题1. 标准标记具有更好的兼容性、可移植性、可复用性。()2. asp式标记的使用与短标记类似,必须在配置文件中启用asp_tags选项。()3. php的块注释需要使用 的形式。()单行注释#,/多行注释/* */4. 这段php代码“!- -”是不会运行的。()5. 注释用于对程序中某些代码进行说明,不会被解释。()三、 选择题1. php代码的开始标记以下哪个不可以( d )。a. ?php b. %c. ? d. eof2. 一般在成熟的项目里边,纯php代码文

5、件“结束标记”最好不要设置,为什么?( b )。a. 为了加快开发速度。b. 如果在结束标记后边无意中设置回车信息,则该文件在被包含的时候回车信息会作为输出内容,对header头设置或打印图片效果有影响。c. html标记里边规定,没有结束标记也可以。d. apache规定的标准。3. php支持多种风格的标记,以下不是php标记的是(c )。a. b. c. d. 4. 下列php标记中,哪些标记对任何配置都有效?( a )。a.标准标记b. 短标记c. asp标记d. script标记5. 下列选项中,哪个不是php的注释符(a)。a. b. #c. /*/ d. /四、 简答题1. 请编

6、写符合php语法的程序,输出“hello world!”;精品.第3章 函数 习题一、 填空题1. 能将字符串转换为数组的函数是【explode()】。2. 在php中,【implode】函数能将数组转化为字符串。3. 使用【strcmp】函数比较两个字符串的大小,结果相同返回true,不同返回false。4. strcmp()函数是根据【ascii码值】比较两个字符串的大小。5. str_replace()函数的返回值类型是【bool(布尔)】类型。二、 判断题1. 在php中,函数名称区分大小写。()2. 函数的参数不可以设定默认值。()3. 在一个php文件中同时定义函数f1()和f1(

7、)时,程序不会报错。()4. 在同一个文件中,可以先调用后定义函数。()5. 在php中,定义函数时可以没有返回值。()三、 选择题1. 下列选项中,函数返回的关键字是(c )。a: back b: goc: returnd: break2. php中存在多种变量,其中在函数内部定义的变量称之为( b )。a: 变量 b: 局部变量 c: 全局变量d: 内部变量3. php中存在多种变量,其中在函数外定义的变量称之为(d )。a: 局部变量 b: 变量 c: 超全局变量 d: 全局变量4. 若想要在函数内部使用函数外定义的变量,可以使用的方式是( a )。a: global关键字 b: 预定义

8、变量$global c: public关键字 d: globals关键字5. 在实际编程中,使用可变函数可以增加程序的( d )。a: 可读性 b: 实用性 c: 复用性d: 灵活性四、 简答题1请简述如何在函数内部使用函数外部的变量?在函数内部使用global修饰变量精品.第4章 数组 一、 填空题1. 数组分为索引数组和【关联 】数组两种类型。2. 索引数组是指下标为【整数 】的数组。关联数组是指下标为字符串的数组。3. 通常情况下,关联数组元素的【键 】和值之间有一定的业务逻辑关系。4. 在数组中,【 键 】是数组元素的唯一标识。5. 使用【 unset() 】函数可以删除数组中的元素。

9、二、 判断题1. 在数组操作符中,“+”表示将两个数组中的各元素进行加法运算。()2. 使用联合运算符合并数组时,如果遇到相同下标的元素,后面的会覆盖前面的。()3. 在数组操作运算符中,联合运算符“+”用于合并数组。()4. 一个数组只能有一个数组指针。()5. 数组指针默认情况下指向数组的最后一个元素。()三、 选择题1. 下列选项中,哪些不是数组指针操作函数( c )。a: current()b: next()c: count()d: each()2. 下列选项中,可以将数组的指针指向第一个元素的是( b )。a: restart () b: reset ()c: prev () d:

10、current ()3. 关于array_unique()函数,下列说法错误的是( c)。a: 该函数将会返回新的数组对象b: 该函数的作用是移除数组中的重复元素c: 该函数第二个参数是递归处理多维数组d: 如果两个元素的值相等只保留第一个元素的键名4. 关于array_search()函数,下面说法错误的是( d )。a: 第一个参数表示在数组中要查找的值b: 第二个参数表示被查询的数组c: 如果要查找的值没有找到,就返回falsed: 如果要查找的值找到了,就返回true5. 关于array_keys() 函数,下面说法错误的是(b )。a: 该函数用于获取数组中元素对应的键名b: 当匹配

11、结果有多个时,只返回第一个匹配的键名c: 函数的第一个参数表示被查询的数组d: 如果只传一个数组,则返回数组中所有的键四、 简答题1. 什么是数组?数组就是一组数据的集合,把一系列数据组织起来,形成一个可操作的整体。数组的每个实体都包含两项:键和值。精品.第5章 面向对象编程 习题一、 填空题1. 继承的关键字为【extends 】,实现接口的关键字为implements。2. php中有很多以两个下划线开头的方法,称之为【 魔术方法 】。3. 在魔术方法中,_construct()是构造方法,_destruct()是【 析构 】方法。4. 如果不想让一个类被实例化,只能被继承,那么可以将该类

12、声明为【 抽象类 】类。5. 声明问抽象类的关键字是【 abstract 】二、 判断题1. 在php5中,析构方法的名称是_destruct(),并且不能有任何参数。()2. php中类常量使用define来定义的。()?3. 当我们希望某些数据在内存中只有一份,并且可以被类的所有实例对象所共享,那么就将该属性声明成静态属性。()4. 当我们希望在不创建对象的情况下调用某个类的方法时,可以将这个方法声明成静态方法。()5. 在php中,使用$this可以访问静态成员。()三、 选择题1. 在下列选项中,不属于面向对象三大特征的是(c )。a: 封装性b: 多态性c: 抽象性d: 继承性2.

13、以下关于面向对象的说法错误的是( d )。a: 是一种符合人类思维习惯的编程思想b: 把解决的问题按照一定规则划分为多个独立对象,通过调用对象的方法来解决问题c: 面向对象的三大特征为封装、继承和多态d: 在代码维护上没有面向过程方便3. 以下关于面向对象三大特征错误的是(d )。a: 封装就是将对象的属性和行为封装起来,不让外界知道具体实现细节b: 继承性主要描述的是类与类之间的关系,通过继承可以在无需重新编写原有类的情况下对原有类的功能进行扩展c: 多态是指同一操作作用于不同的对象,会产生不同的执行结果d: 多态性是面向对象的核心思想4. 以下关于面向对象说法错误的是( c )。a: 面向

14、对象编程具有开发时间短、效率高、可靠性强等特点b: 面向对象编程其代码更易于维护、更新和升级c: 抽象性是面向对象的三大特征之一d: 封装是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作5. 以下关于面向对象的说法错误的是( d )。精品.a: 面向对象就是把要处理的问题抽象为对象,通过对象的属性和行为来解决对象的实际问题b: 抽象就是忽略事物中与当前目标无关的非本质特征,更充分的注意与当前目标有关的本质特征,从而找出事物的共性c: 封装的信息隐蔽作用反映了事物的相对独立性,可以只关心它对外所提供的接口d: 面向对象编程要将所有属性都封装起来不允许外部直接存取四

15、、 简答题1. 构造方法和析构方法是在什么情况下调用的,作用是什么。构造方法在类实例化对象时自动调用,用于对类中的成员进行初始化。析构方法在对象销毁之前被自动调用,用于完成清理工作。第6章 错误处理及调试 习题一、 填空题1. 在运行php文件时,如果遗漏了一个分号,这属于【语法】错误。2. 在php中一般有两种方法处理错误,分别为标准php错误报告和【异常处理】。3. e_all表示除【e_strict】以外的所有错误和警告。4.在脚本运行时,遇见可能出现错误的地方,会触发的级别常量是【e_notice】。5.在程序开发中,可以使用【tigger-error】函数手动触发错误。二、 判断题1

16、. 异常的处理不属于错误的处理方式。()2. 在php中,错误级别表示当前错误的等级。()3. php采用常量的形式来表示错误级别。()4. 在php中,每个错误级别都采用字符串形式表示。()5. e_all表示除e_strict以外的所有错误和警告。()三、 选择题1. 在脚本运行时,遇见可能出现错误的地方,会触发的级别常量是( d )。a: e_errorb: e_warnningc: e_parsed: e_notice2. 在程序开发中,可以使用( a )函数触发错误。a: trigger_error()b: error_reporting()c: error_trigger()d:

17、reporting_error()3. trigger_error函数有( )个参数是必需的,有()个参数是可选的( d )。a: 2, 1 b: 2, 2 c: 1, 2 d: 1, 1 4. 在使用trigger_error()函数之前,一定要使用( a )函数让错误显示。a: ini_set()b: set_ini()c: reporting_error()d: error_reporting()5. 在php中,显示错误报告的方式有(a )。精品.a: 修改配置文件。b: error_reporting()和echo ()函数。c: error_reporting()和die()函数。

18、d: ini_set()和die()函数。四、 简答题1. 在php.ini文件中,和错误有关的设置都有那些?(1)error_reporting,设定错误级别(2)display_errors,是否显示错误报告,设置为on则打开,设置为off则关闭所有错误提示(3)log_errors,默认设置为off,是否记录错误日志;(4)track_errors,默认设置为off,该选项可以帮助解决代码中的错误,而不是让php提供其默认的功能。第7章 http协议 习题一、 填空题1. http是hyper text transfer protocol的缩写,其中文是【 超文本传输协议 】。2. 【h

19、ttp】协议是一种请求/响应式的协议。3. 在浏览器与服务器的交互过程中,也得遵循一定的规则,这个规则就是【http】。1. http允许传输任意类型的数据,但是该数据的类型需要由【 content-type协议】加以标记。4. 基于http1.0协议的客户端与服务器在交互过程中需要经过【4】个步骤。二、 判断题1. http1.0协议每次只能处理一个http请求。()2. http1.1协议在一个tcp连接上可以传送多个http请求和相应。()3. /test/请求的是域名为的web服务器根目录下的默认资源。()4. 如果网页上的f

20、orm表单不设置method属性,则默认以post方式发送请求。()5. post方式提交表单是将表单元素及数据作为实体内容发送给服务器。()三、 选择题1. http响应行位于请求消息的第一行,它不包含哪几个部分?( d )。a: 状态码b: 状态描述信息c: http协议版本 d: 响应返回的目标地址2. 关于以下在开发中比较常见的状态码描述错误的是( c )。a: 状态码200表示服务器成功处理了客户端的请求。b: 状态码302表示请求的资源从不同的uri响应请求,但请求者应继续使用原有位置来进行以后的请求。c: 状态码404表示服务器拒绝处理客户端的请求。精品.d: 状态码500表示服

21、务器发生错误,无法处理客户端的请求。3. /该地址访问服务端口号是多少?( c )。a: 3306b: 23c: 80d: 214. http请求行位于请求消息的第一行,它不包含哪几个部分?(c)a: 请求方式 b: 资源路径 c: 请求来源 d: 使用的http协议版本5. http请求消息中,最常使用的请求方式是( d )。a: post和head方式b: get和head方式c: head和options方式d: post和get方式四、 简答题1. 请简单概括http协议的主要特点。1、支持客户/服务器模式。2、 简单快速:客户向服务器请求服务时,

22、只需传送请求方法和路径。请求方法常用的有get、head、post。每种方法规定了客户与服务器联系的类型不同。由于http协议简单,使得http服务器的程序规模小,因而通信速度很快。3、灵活:http允许传输任意类型的数据对象。正在传输的类型由content-type加以标记。4、无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。5、无状态:http协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。第8章 p

23、hp与web页面交互 习题一、 填空题1. 【 strip_tags() 】函数用于去除字符串中的html和php标记。1. 【 htmlentities() 】函数可以将html和php标记转换成字符,以文本的形式输出。2. 【 isset() 】函数用于检测变量是否具有值,包括0、false或者一个空字串,但不能是null。3. 【 empty() 】函数用于检测变量是否具有空值,包括空字串、0、null或false。2. 【 is_numeric() 】函数用于检测变量是否是数字或数字字符串。二、 判断题1. php是一种运行在服务器端的语言,为了方便进行用户交互,通常和html结合使用

24、。()2. 服务器将获取到的静态资源通过http请求发送到浏览器端。()精品.3. 请求php文件,apache会将请求交给php模块处理,结果以html形式返回给apache。()4. 表单由表单标签和表单元素两部分组成。()5. 用户通过表单提交的数据,php后台程序可以直接访问并使用。()三、 选择题1. 以下数据使用isset()函数检测,返回false的是(d )。a: 0b: falsec: d: null2. 以下关于浏览器请求服务器过程说法错误的是( c )。a: 浏览器是通过url地址来访问服务器的。b: 数组在传输过程中需要遵循http协议。c: 当数据传输到web服务器时

25、,web服务器自己会对数据进行处理。d: 处理好的数据以html形式返回给浏览器。3. form标签中“name”属性、“method”属性、“action”属性和“enctype”属性的作用分别是( a )。a: 设置表单名称;设置表单提交方式;设置接收数据路径;设置提交数据的编码格式。b: 设置表单提交方式;设置提交数据的编码格式;设置表单名称;设置接收数据路径。c: 设置表单名称;设置接收数据路径;设置表单提交方式;设置提交数据的编码格式。d: 设置表单名称;设置提交数据的编码格式;设置接收数据路径;设置表单提交方式。4. 标记type属性有多种值,其中text、checkbox、pas

26、sword、radio分别代表(c )。a: 文本框、密码框、复选框、单选按钮b: 密码框、文本框、单选按钮、复选框c: 文本框、复选框、密码框、单选按钮d: 密码框、复选框、文本框、单选按钮5. 以下关于get方式提交和post方式提交数据说法错误的是( c )。a: get是把参数数据队列加到提交表单的action属性所指的url中,值和表单内各个字段一一对应,在url中可以看到。b: post是通过http post机制,将表单内各个字段与其内容放置在html header内一起传送到action属性所指的url地址。用户看不到这个过程。c: get安全性非常低,post安全性较高。而且

27、post的执行效率也比get好。d: 在form提交的时候,如果不指定method,则默认为get请求,form中提交的数据将会附加在url之后,以?分开与url分开。四、 简答题1. 请简要介绍get与post的区别?1. get是从服务器上获取数据,post是向服务器传送数据。2. get是把参数数据队列加到提交表单的action属性所指的url中,值和表单内各个字段一一对应,在url中可以看到。post是通过http post机制,将表单内各个字段与其内容放置在html header内一起传送到action属性所指的url地址。用户看不到这个过程。精品.3. 对于get方式,服务器端用r

28、equest.querystring获取变量的值,对于post方式,服务器端用request.form获取提交的数据。4. get传送的数据量较小,不能大于2kb。post传送的数据量较大,一般被默认为不受限制。但理论上,iis4中最大量为80kb,iis5中为100kb。5. get安全性非常低,post安全性较高。但是get执行效率却比post方法好。第9章 php会话技术 习题一、 填空题1. 在实际开发中,注销功能是通过删除【 session 】和cookie实现的。2. 在实际开发中,可以通过设置【cookie 】的有效期来实现用户7天免登录的功能。1. 执行【 session_de

29、stroy() 】函数可以同时删除session数据和文件。3. php中session的设置和读取都是由超全局数组【$_session】来完成。4. 从session中获取数据,需要使用【session_start()】函数开启session。二、 判断题1. 若要存储从session中获取的数据只能是数组或基本数据类型。()2. php中session支持任意类型的数据。()3. 由于$_session是超全局数组,所以数组内每个元素可以对应多个session数据。()4. 在php中,必须使用超全局数组$_session向session添加数据。()5. 在调用session_start

30、()前不能有任何输出,包括空格和空行,否则会报错。()三、 选择题1. php可以利用( d)配置项实现自动开启session的机制。a: session_autob: session_startc: session_auto_startd: session.auto_start2. 下列选项中不可以保存到session里的数据类型是( c )。a: 字符串b: 数组c: 对象d: 布尔类型3. 下列选项中(a)是将数据存储在浏览器端的会话技术,并以此来跟踪和识别用户。a: cookieb: sessionc: requestd: a和b4. 用户第一次访问服务器时,服务器会在响应消息中增加(

31、 c)头字段,并将信息发送给浏览器。 精品.a: setcookieb: cookiec: set-cookied: 以上答案都不对5. 在php程序开发中,通过(a )函数创建cookie。a: setcookie() b: set_cookie() c: cookie() d: 以上答案都不对 四、 简答题1. 在项目开发中,经常使用isset()函数和empty()函数来判断变量,请简述他们的区别。isset()判断一个变量是否已经被设置并且不为null,如果是则返回true,否则返回false。empty()判断一个变量, 非空非零返回 false。否则返回true。、0、0、null

32、、false、array()、以及没有任何属性的对象都被认为是空的。第10章 正则表达式 习题一、 填空题1. 正则表达式的英文简称为【 regexp 】。1. 【 pcre 】是兼容perl正则表达式的一套正则引擎。2. 在正则表达式中,选择字符“|”可以理解为【 或 】。3. 反义字符类,应该在字符类内部添加【 “” 】前缀。2. 在php中,使用正则表达式对数组中的元素进行匹配可以用【 preg_grep() 】函数。二、 判断题1. 正则表达式是一种描述字符串结构的语法规则。()2. php的正则表达式支持posix规则,但不支持pcre规则。 ()3. 在正则表达式中,定位符“”和“

33、$”用于描述单词的边界。 ()4. 在正则表达式中,“b”用于匹配单词边界,“b”用于匹配非单词边界。 ()5. 在正则表达式中,一个方括号“”可以匹配一个单词。 ()三、 选择题1. 下列正则表达式选项中,可以匹配字符串“itcast”的选项是( b )。a: itcastb: itcastc: it?c?astd: it*c*ast2. 在正则表达式中,下列选项哪些不是反斜线“”的作用(d )。a: 作为转义符使用b: 定义一些限定符精品.c: 指定预定义字符集 d: 改变限定符的作用范围3. 下列正则表达式选项中,可以匹配字符串“itcast”的选项有( d )。a: w- b: w+ c: s+ d: s+4. 下列选项中,可以被正则表达式“(go)+gle”匹配的字符串有( b )。a: googleb: goglec: goglogled: gle5. 在正则表达式中,下列选项哪些是括号字符“()”的作用(b )。a: 定义限定符b: 分组 c: 固定限定符的作用范围d: 表示字符范围四、 简答题1. 请简述什么是xss攻击。xss攻击全称是:cross site script 跨站脚本攻击恶意攻击者往web页面里插入恶意html和javascript代码,当用户浏览该页面之时,嵌入其中的html和javasc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论