《PHP程序设计(慕课版第2版)课后习题答案1-12章题库章节练习题答案全书测试题参考答案含原题.doc》由会员分享,可在线阅读,更多相关《PHP程序设计(慕课版第2版)课后习题答案1-12章题库章节练习题答案全书测试题参考答案含原题.doc(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第1章 PHP开发1-1 简单说明PHP程序运行过程中,PHP预处理器、WEB服务器和数据库各自的功能。PHP预处理器的功能是解释PHP代码,它主要是将PHP程序代码解释为文本信息;WEB服务器的功能是解析HTTP;数据库服务器的功能是提供数据查询和数据管理服务。1-2 常见的WEB服务器和数据库服务器都有哪些?常见的WEB服务器有开源的Apache服务器、微软的IIS服务器、Tomcat服务器等;常见的数据库服务器有MySQL、Oracle、SQL Server、DB2、Sybase、Access等。1-3 列举安装PHP开发环境后的一些关键配置。安装PHP开发环境后可以对Apache服务端
2、口号进行修改,设置网站起始页面,设置Apache服务器主目录,为MySQL服务器root账户设置密码等。1-4 默认情况下,Apache服务器的配置文件名以及PHP预处理器的配置文件名分别是什么?默认情况下,Apache服务器的配置文件名是httpd.conf,PHP预处理器的配置文件名是php.ini。2-1 PHP的标记符支持哪几种标记风格?PHP一共支持4种标记风格:XML风格、脚本风格、简短风格和ASP风格。2-2 PHP注释种类有哪些,PHP注释的主要作用是什么?PHP支持3种风格的程序注释:单行注释(/)、多行注释(/*/)和Shell风格的注释(#)。注释的主要作用是能够提高程序
3、的可读性,而且还有利于程序的后期维护工作。2-3 PHP的数据类型主要有哪几种?PHP的数据类型主要分为三种:标量数据类型、复合数据类型和特殊数据类型。2-4 print语句和echo语句的区别是什么?(1)使用print语句一次只能输出一个字符串,而使用echo语句可以同时输出多个字符串,多个字符串之间用逗号隔开。(2)在echo语句前不能使用错误屏蔽运算符“”。(3)print语句可以看作是一个有返回值的函数,因此print语句能作为表达式的一部分,而echo语句不能。3-1 如何定义常量及获取常量的值?定义常量使用define()函数,获取常量的值使用constant()函数。3-2 “
4、=”是什么运算符?举例说明该运算符与“=”运算符在使用上有什么区别。“=”是恒等于运算符,例如,$a = $b,说明$a和$b两个变量不但数值上相等,而且类型也一样。而$a = $b,说明$a和$b两个变量在数值上相等,但是类型可以不一样。3-3 任意指定3个数,写程序求出3个数的最大值。$b?$a:$b;$e = $d$c?$d:$c;echo 3个数的最大值是.$e;?4-1 列举出常用的流程控制语句(4种)。if语句、switch语句、while循环语句、for循环语句。4-2 举例说明while循环语句和dowhile循环语句在应用上的不同点。while语句先对表达式进行判断,结果为真
5、再去执行循环体;而dowhile语句先执行一次循环体,然后再对表达式进行判断。下面的代码说明了两种语句的区别:5-1 sort()、asort()和ksort()三者之间有什么差别?sort()函数是根据数组元素值以升序进行排序,并为排序后的数组赋予新的“整数”键名;asort()函数同样是根据数组元素值以升序进行排序,但是在排序后会保持数组元素原有的“键值对”对应关系;ksort()函数是根据数组元素的“键名”以升序进行排序,排序后保持数组元素原有的“键值对”对应关系。5-2 有一数组$a=array(8,2,7,5,1);请将其重新排序,按从小到大的顺序输出。代码如下:?php$a=arr
6、ay(8,2,7,5,1);sort($a);for($i=0;$i6-1 提交表单数据有哪几种方法,PHP如何获取表单提交的数据?提交表单数据有两种方法:GET方法和POST方法。在PHP中通过全局变量$_GET和$_POST可以获取表单提交的数据。6-2 PHP中实现文件上传需要用到哪几个函数?PHP中实现文件上传主要用到is_uploaded_file()函数和move_uploaded_file()函数。6-3 在什么情况下,$name与$_POSTname可以通用?在PHP配置文件php.ini中将register_globals的值设置为ON时,$_POSTname可以直接写成$n
7、ame。7-1 用最简短的代码编写一个获取3个数字中最小值的函数。代码如下:?phpfunction getMin($a,$b,$c)$min=$a$b?$a:$b;$min=$min7-2 函数的参数赋值方式有哪几种?函数的参数赋值方式有按值传递、按引用传递和默认参数3种。7-3 变量按其作用域可以分为哪几种?变量按其作用域可以分为全局变量、局部变量和静态变量3种。7-4 说明include语句和require语句的区别。include语句和require语句的区别主要体现在两个方面:(1)在使用require语句调用文件时,如果调用的文件没找到,require语句会输出错误信息,并且立即终
8、止脚本的处理。而include语句在没有找到文件时则会输出警告,不会终止脚本的处理。(2)使用require语句调用文件时,只要程序一执行,就会立刻调用外部文件;而通过include语句调用外部文件时,只有程序执行到该语句时,才会调用外部文件。8-1 如何将1234567890转换成1,234,567,890每3位用逗号隔开的形式?将1234567890转换成1,234,567,890使用的是number_format()函数,代码如下:8-2 使用什么函数可以实现字符串的翻转功能?实现字符串的翻转功能使用的是strrev()函数。8-3 如何实现中文字符串的无乱码截取?在截取中文字符串时,为
9、了避免出现乱码可以使用mb_substr()函数。8-4 PHP中分割字符串的函数是什么?对数组进行合成的函数又是什么?PHP中分割字符串的函数是explode()函数,对数组进行合成的函数是implode()函数。9-1 MySQL支持的数据类型主要有哪几种?MySQL支持的数据类型主要有3种:数字类型、字符串(字符)类型、日期和时间类型。9-2 MySQL中使用的字符串类型主要有哪几类?在MySQL中,字符串类型可以分为三类:普通的文本字符串类型(CHAR和VARCHAR)、可变类型(TEXT和BLOB)和特殊类型(SET和ENUM)。9-3 列举出MySQL中常用的统计函数,并说出这些函
10、数的作用。avg()函数:用于获取指定列的平均值。count()函数:用于统计数据表中的记录数。min()函数:用于获取指定字段的最小值。max()函数:用于获取指定字段的最大值。sum()函数:用于获取指定字段所有记录的总和。9-4 having子句和where子句都是用来指定查询条件,请说出这两种子句在使用上的区别。having子句和where子句的不同之处在于where子句在分组查询之前应用,而having子句在分组查询之后应用,而且having子句中还可以包含统计函数。10-1 假设有一个数据库db_student,试着采用3种不同的方式选择该数据库。第一种方式:$connID = m
11、ysqli_connect(127.0.0.1, root, 111, db_student);第二种方式:$connID = mysqli_connect(127.0.0.1, root, 111);mysqli_select_db($connID, db_student);第三种方式:$connID = mysqli_connect(127.0.0.1, root, 111);mysqli_query($connID,use db_student);10-2 在mysqli函数库中,哪个函数可以取得查询结果集总数?获取查询结果集总数的函数是mysqli_num_rows()函数。10-3
12、mysqli_fetch_array()函数和mysqli_fetch_row()函数之间存在哪些区别?mysqli_fetch_array()函数将结果集返回到数组中,在输出数组中的数据时既可以使用数字索引,也可以使用关联索引。mysqli_fetch_row()函数从结果集中取得一行作为枚举数组,在输出数组中的数据时只能使用数字索引。11-1 如何完成对Cookie过期时间的设置?创建Cookie的语法格式如下:bool setcookie(string name,string value,int expire,string path,string domain,int secure)在该
13、语法中,第3个参数expire用来设置Cookie的过期时间,例如,设置Cookie的名称为name,设置Cookie的值为“明日科技”,设置过期时间为60秒,代码如下:setcookie(name, 明日科技, time()+60);11-2 如何通过setcookie()函数删除客户端Cookie?删除Cookie只需将setcookie()函数中的第二个参数设置为空值,将第3个参数设置为小于系统的当前时间即可。11-3 简单说明Session与Cookie在使用上的区别。Session是将信息保存在服务器上,并通过一个SessionID来传递客户端的信息;Cookie是将信息以文本文件的
14、形式保存在客户端,并由浏览器进行管理和维护,所以使用Session要比Cookie更安全。12-1 如何声明一个名为“myclass”的没有方法和属性的类?代码如下:class myclass12-2 请说出public、protected和private三种权限修饰符之间的区别。被public关键字修饰的类成员,可以在程序的任何地点(类内、类外)被其他的类和对象调用。被private关键字修饰的类成员,只能在所属类的内部被调用和修改,不可以在类外被访问,即使是子类也不可以。被protected关键字修饰的类成员,可以在本类和子类中被调用,其他地方则不可以被调用。12-3 PHP中类成员属性和
15、方法默认的权限修饰符是什么?默认的权限修饰符是public。12-4 列举PHP 5中的面向对象关键字并指明它们的用途。static关键字:被该关键字修饰过的属性和方法不需要对象而使用类名就可以直接访问。final关键字:被该关键字修饰过的类和方法不可以再被继承,也不能再有子类。clone关键字:通过该关键字可以克隆对象,对象克隆成功后,它们的成员方法、属性以及值是完全相同的。instanceof关键字:通过该关键字可以检测当前对象是属于哪个类。12-5 写出PHP 5中常用的魔术方法。常用的魔术方法有_set()和_get()方法、_isset()和_unset()方法、_call()方法、
16、_toString()方法、_autoload()方法等。13-1 简述使用Ajax的优点主要体现在哪几个方面。(1)无刷新更新页面。Ajax在不需要重新载入整个页面的情况下,即可根据服务器端返回的请求更改页面内容,使用Ajax技术可以有效减少用户等待页面刷新的时间。(2)可以把一部分以前由服务器负担的工作转移到客户端,利用客户端闲置的资源进行处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。(3)减轻服务器的负担。Ajax的原则是“按需求获取数据”,可以最大程度地减少冗余请求和响应对服务器造成的负担。(4)可以调用XML等外部数据,进一步促进Web页面显示和数据的分离。 (5)Ajax是基于标准化并被广泛支持的技术,不需要下载插件或者小程序。13-2 通过XMLHttpRequest对象请求PHP页面有哪两种方式?一种是GET方式,另一种是POST方式。13-3 简述XMLHttpRequest对象与服务器进行交互的过程。Ajax与服务器的交互分为以下3个步骤:(1)初始化XMLHttpRequest对象。(2)设置请求状态和返回处理函数。(3)发送HTTP请求。7