PHP期末练习题(参考答案)
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
return function ($x) use ($f, $g){ return $f($g($x));
}; } $func = compose($value1, $value2); echo $func(5); ?>
修改代码: <?php $value1 = function ($x) { return $x*$x; }; $value2 = function ($x) { return $x*$x*$x; }; function compose($f, $g){
`password` = '$password';";
4. 请写出文件上传的表单设计代码()
<form enctype="multipart/form-data" action="upload.php" method="post"> <input type="hidden" name="max_file_size" value="100000"> <input name="userfile" type="file">
?>
if (isset($_POST['submitted'])) { $username = trim($_POST['username']); $password = trim($_POST['password']); $tips = ""; if (!get_magic_quotes_gpc()) { $username = addslashes($username); $password = sha1(addslashes($password)); } if (($username==$store_username) && ($password==$store_password)) { $tips .= "登陆成功!"; } $statement = "SELECT * FROM `users` WHERE `name` = '$username' and
为__24 分钟___。 5. 表单的提交方式有_GET__ 和 __POST____。 6. PHP5 支持的两种复合数据类型是:__数组_ 和 __对象__。 7. 面向对象编程的主要特征有__封装__、__继承__ 和 __多态___。 8. 显示当前执行的 PHP 程序文件名的内置常量是_ _file_ ___。 9. MySQL 服务器的默认连接端口是_____3306_______。 10. PHP 程序中跳出目前执行的循环的语句是___break__。 11. MySQL 数据库中可使用___ GRANT ___ 语句增加新用户并限制用户访问数
二、填空
1. PHP 的构造函数是_ __construct ()__。 2. 访问类属性必须通过__$this->___的方式进行访问。 3. 访问类中静态成员或函数应通过特殊类__类名::____或__self:______进行访问。 4. cookie 存储在__客户端__,session 是将数据存储在_服务器端__,会话的生命周期默认
据库的权限。 12. MySQL 数据库查询操作中可使用_ ORDER BY 子句指定查询结果的排序规则。 13. 在 HTML 表单中设置数组的方法:__在输入控件的 name 属性的名称后面加上一对
中括号[]___。
三、综合应用
1. 功能:实现产生 0 到 9 的数组元素,查找 0 是否再数组里面,如果存在输出键名, 不存在就提示“0 不在数组中”。()
8. AJAX 的核心是:( )
a) 基于标准的表示技术:XHTML/CSS
b) 数据交换和操作技术:XML/XSLT
c) 数据获取技术:XMLHttpRequest
d) 客户端控制技术:JavaScript
9. 下面那一个正则表达式用来验证电子邮件(如:zhang.san_123@)的格式最
<?php $username = $_POST['username'];
$password = $_POST['password']; $statement = "SELECT * FROM `users` WHERE `name` = '$username' and `password` = '$password';";
$result=mysql_query("SELECT avg(math) , avg(english) FROM student ");
$res=mysql_fetch_array($result); Echo "数学平均分为:" $res[' avg(math) ']. "英语平均分为:"$res[' avg(math) '];
<html> <body> <pre> <?php $arr1 = range(0, 9);
echo "数组arr1为:" ; print_r($arr1); if (in_array(0, $arr1)) {
echo "0在数组arr1中。"; echo $arr1[0]; } else { echo "0不在数组arr1中。";
<input type="submit" value="上传文件"> </form>
5.已知 MySQL 数据库服务器的数据库用户名为 root 和密码空,服务器中有一数据库 lesson,库中含有一个学生成绩表 student,student 表的结构如下:(第七、八周第的相关数 据库操作内容)
字段名
return function ($x)use($f,$g) { return $f($g($x));
}; } $func = compose($value1, $value2); echo $func(5); ?>
3. 已知在 php.ini 的 magic_quotes_gpc 设为 off 的情况下,以下 SQL 语句的生成代码 存在注入漏洞,请在不增加数据检查等语句的情况下写出防 SQL 注入的方法。()
练习题
一、 单选
1. 以下控制选项与错误控制无关的是:(
)
a) error_reporting
b) display_errors
c) log_errors
d) date.timezone
2. 下面不属于 PHP 的标签是:(
?>
c) < >
d) <?php ?>
3. 定义关联数组时,其键名与值之间的分隔符是:
a) XML 是区分大小写的。
b) XML 文档中可以有多个根元素。
c) XML 不允许缺失结束标记。
d) XML 不允许有重叠的标记。
7. 不属于采用 AJAX 的原因是:( )
a) AJAX 是基于被广泛支持的公开标准技术。
b) 不刷新整个页面,提高了数据处理效率。
c) 将数据和显示分离。
d) 因为它是一种新的技术。
正确:( )
a)[_\.0-9a-z]@([0-9a-z]+\.)+[0-9a-z\.-]{2,6}
b)[_\.0~9a~z-]*@([0~9a~z-]+\.)+[0~9a~z\.]+
c)[_\.0-9a-z-]+@([0-9a-z-]+\.)+[0-9a-z\.]+ d)[_\.0~9a~z-]+@([0~9a~z-]+\.)+[0~9a~z]{2,6} 10. 以下脚本输出什么? ( ) <?php echo 'Testing ' . 1 + 2 . '45'; ?> A.Testing 1245 B.Testing 345 C.Testing 1+245 D.245
类型
附加属性
字段说明
id
int
auto_increment
序号
name varchar(20)
学生姓名
math decimal(5,2)
数学成绩
english decimal(5,2)
英语成绩
(1)写一个PHP程序,实现:统计所有同学数学和英语的平均成绩,按如下 样式输出:
$id=mysql_connect("localhost","root",""); mysql_select_db("lesson",$id); mysql_query("set names gb2312");
}
?> </pre> </body> </html>
2. 以下程序有错,请修改错误。(第 4 周 02 次设计练习) <?php $value1 = function ($x) { return $x*$x; }; $value2 = function ($x) { return $x*$x*$x; }; function compose($f, $g) {
a) -> b)=> c): d)#
4. 如果想要在文件末尾写入方式打开一个文件,该给 fopen()传什么参数?
a).w b).r c).a d).a+
5. PHP 类定义中不支持的访问控制是:( )
a) public
b) private
c) protected
d) friend
6. 以下关于 XML 的描述不正确的是:( )
}; } $func = compose($value1, $value2); echo $func(5); ?>
修改代码: <?php $value1 = function ($x) { return $x*$x; }; $value2 = function ($x) { return $x*$x*$x; }; function compose($f, $g){
`password` = '$password';";
4. 请写出文件上传的表单设计代码()
<form enctype="multipart/form-data" action="upload.php" method="post"> <input type="hidden" name="max_file_size" value="100000"> <input name="userfile" type="file">
?>
if (isset($_POST['submitted'])) { $username = trim($_POST['username']); $password = trim($_POST['password']); $tips = ""; if (!get_magic_quotes_gpc()) { $username = addslashes($username); $password = sha1(addslashes($password)); } if (($username==$store_username) && ($password==$store_password)) { $tips .= "登陆成功!"; } $statement = "SELECT * FROM `users` WHERE `name` = '$username' and
为__24 分钟___。 5. 表单的提交方式有_GET__ 和 __POST____。 6. PHP5 支持的两种复合数据类型是:__数组_ 和 __对象__。 7. 面向对象编程的主要特征有__封装__、__继承__ 和 __多态___。 8. 显示当前执行的 PHP 程序文件名的内置常量是_ _file_ ___。 9. MySQL 服务器的默认连接端口是_____3306_______。 10. PHP 程序中跳出目前执行的循环的语句是___break__。 11. MySQL 数据库中可使用___ GRANT ___ 语句增加新用户并限制用户访问数
二、填空
1. PHP 的构造函数是_ __construct ()__。 2. 访问类属性必须通过__$this->___的方式进行访问。 3. 访问类中静态成员或函数应通过特殊类__类名::____或__self:______进行访问。 4. cookie 存储在__客户端__,session 是将数据存储在_服务器端__,会话的生命周期默认
据库的权限。 12. MySQL 数据库查询操作中可使用_ ORDER BY 子句指定查询结果的排序规则。 13. 在 HTML 表单中设置数组的方法:__在输入控件的 name 属性的名称后面加上一对
中括号[]___。
三、综合应用
1. 功能:实现产生 0 到 9 的数组元素,查找 0 是否再数组里面,如果存在输出键名, 不存在就提示“0 不在数组中”。()
8. AJAX 的核心是:( )
a) 基于标准的表示技术:XHTML/CSS
b) 数据交换和操作技术:XML/XSLT
c) 数据获取技术:XMLHttpRequest
d) 客户端控制技术:JavaScript
9. 下面那一个正则表达式用来验证电子邮件(如:zhang.san_123@)的格式最
<?php $username = $_POST['username'];
$password = $_POST['password']; $statement = "SELECT * FROM `users` WHERE `name` = '$username' and `password` = '$password';";
$result=mysql_query("SELECT avg(math) , avg(english) FROM student ");
$res=mysql_fetch_array($result); Echo "数学平均分为:" $res[' avg(math) ']. "英语平均分为:"$res[' avg(math) '];
<html> <body> <pre> <?php $arr1 = range(0, 9);
echo "数组arr1为:" ; print_r($arr1); if (in_array(0, $arr1)) {
echo "0在数组arr1中。"; echo $arr1[0]; } else { echo "0不在数组arr1中。";
<input type="submit" value="上传文件"> </form>
5.已知 MySQL 数据库服务器的数据库用户名为 root 和密码空,服务器中有一数据库 lesson,库中含有一个学生成绩表 student,student 表的结构如下:(第七、八周第的相关数 据库操作内容)
字段名
return function ($x)use($f,$g) { return $f($g($x));
}; } $func = compose($value1, $value2); echo $func(5); ?>
3. 已知在 php.ini 的 magic_quotes_gpc 设为 off 的情况下,以下 SQL 语句的生成代码 存在注入漏洞,请在不增加数据检查等语句的情况下写出防 SQL 注入的方法。()
练习题
一、 单选
1. 以下控制选项与错误控制无关的是:(
)
a) error_reporting
b) display_errors
c) log_errors
d) date.timezone
2. 下面不属于 PHP 的标签是:(
?>
c) < >
d) <?php ?>
3. 定义关联数组时,其键名与值之间的分隔符是:
a) XML 是区分大小写的。
b) XML 文档中可以有多个根元素。
c) XML 不允许缺失结束标记。
d) XML 不允许有重叠的标记。
7. 不属于采用 AJAX 的原因是:( )
a) AJAX 是基于被广泛支持的公开标准技术。
b) 不刷新整个页面,提高了数据处理效率。
c) 将数据和显示分离。
d) 因为它是一种新的技术。
正确:( )
a)[_\.0-9a-z]@([0-9a-z]+\.)+[0-9a-z\.-]{2,6}
b)[_\.0~9a~z-]*@([0~9a~z-]+\.)+[0~9a~z\.]+
c)[_\.0-9a-z-]+@([0-9a-z-]+\.)+[0-9a-z\.]+ d)[_\.0~9a~z-]+@([0~9a~z-]+\.)+[0~9a~z]{2,6} 10. 以下脚本输出什么? ( ) <?php echo 'Testing ' . 1 + 2 . '45'; ?> A.Testing 1245 B.Testing 345 C.Testing 1+245 D.245
类型
附加属性
字段说明
id
int
auto_increment
序号
name varchar(20)
学生姓名
math decimal(5,2)
数学成绩
english decimal(5,2)
英语成绩
(1)写一个PHP程序,实现:统计所有同学数学和英语的平均成绩,按如下 样式输出:
$id=mysql_connect("localhost","root",""); mysql_select_db("lesson",$id); mysql_query("set names gb2312");
}
?> </pre> </body> </html>
2. 以下程序有错,请修改错误。(第 4 周 02 次设计练习) <?php $value1 = function ($x) { return $x*$x; }; $value2 = function ($x) { return $x*$x*$x; }; function compose($f, $g) {
a) -> b)=> c): d)#
4. 如果想要在文件末尾写入方式打开一个文件,该给 fopen()传什么参数?
a).w b).r c).a d).a+
5. PHP 类定义中不支持的访问控制是:( )
a) public
b) private
c) protected
d) friend
6. 以下关于 XML 的描述不正确的是:( )