资源描述
得 分
评卷人
合肥滨湖职业技术学院
17-18学年度第二学期《PHP》期末考试卷(A)
班级: 学号: 姓名:
题 号
一
二
三
四
总 分
分 数
得 分
评卷人
一、 选择题(每小题2分,共30分)
1.如何使用PHP向浏览器输出"hello world"?( B )
A. "hello World"; B. echo "Hello World";
C. Document.Write("Hello World"); D. System.out.println("hello world");
2. 在PHP中,所有的变量以哪个符号开头?( C )
A. ! B. ? C. $ D. #
3. 读取post方法传递的表单元素值的方法是( B ).
A. $_post["名称"] B. $_POST["名称"]
C. $post["名称"] D. $POST["名称"]
4. 要查看一个结构类型变量的值,可以使用函数( D ).
A. print() B. out() C. echo() D. print_r()
5. 在PHP中声明一个函数,该函数名myFunction,接受一个形参,正确方法是( A ).
A.function myFunction($a)
B.create myFunction($a)
C.new_function myFunction($a)
D.myFunction($a)
6. 自定义函数中,返回函数值的关键字是( B ).
A.for B.return C.back D.retrieve
7. 函数var_dump的意义是( C ).
A. 定义数组 B. 遍历数组
C. 输出变量的相关信息 D. 递归数组
8. 返回数组当前指针指向的元素的函数是( D ).
A. next() B. each() C. reset() D. current()
9. $x=15; echo $x++; $y=20; echo ++$y; 执行上述代码后的结果是( B ).
A. 15,20 B. 15,21 C. 16,20 D. 16,21
10. $A=array("January","February","March",”April”,”May”); echo $A[2]; 执行上述代码的结果是( C ).
A. 无任何内容 B. February C. March D. April
11. 以只读模式打开文件"time.txt"的正确方法是( D ) .
A. fopen("time.txt","r+"); B. open("time.txt");
C. open("time.txt","read"); D. fopen("time.txt","r");
12. 给出下列变量名,哪个是不合法的?( D ) .
A. $my_Var B. $myVar C. $myVar2 D. $my-Var
13. 关于PHP中的使用双引号和单引号定义一个字符串,下列说法正确的是( A ) .
A. 双引号中如果出现了变量名,会被替换成这个变量对应的值;单引号中如果出现了变量名,不会被替换成这个变量对应的值
B. 双引号中如果出现了变量名,不会被替换成这个变量对应的值;单引号中如果出现了变量名,会被替换成这个变量对应的值
C. 双引号和单引号中出现了变量名,都会被替换成这个变量对应的值
D. 双引号和单引号中出现了变量名,都不会被替换成这个变量对应的值
14. PHP中函数array_push的作用是( C ) .
A.将数组的第一个元素弹出 B.将数组的最后一个元素弹出
C.将一个或多个元素压入数组的末尾 D.将一个或多个元素插入数组的开头
15. PHP中函数empty的作用是( A ) .
A.测试变量是否为空 B.测试变量是否存在
得 分
评卷人
C.测试常量是否为空 D.测试常量是否存在
二、填空题(每空1分,共16分)
16. LAMP是PHP运行的黄金组合,LAMP具体指的是 Linux操作系统 、
Apache服务器 、 Mysql数据库 、PHP.
17. 通过if(条件表达式){ 执行语句或与语句组 }else{ 执行语句或与语句组 }
实现的是哪一种程序流程控制? 选择程序流程控制 ;
通过while(条件表达式){ 执行语句或与语句组 }
实现的是哪一种程序流程控制? 循环程序流程控制 .
18. 在循环流程控制中, break 关键字用于结束整个循环,继续执行下面的代码;
continue 关键字用于结束本次循环,执行下一次循环.
19.在PHP函数体中定义的变量,在默认情况下,即不加任何修饰符是 局部变量 ,只在函数运行期间有效;对于函数体内部定义的全局变量,定义时需要加 global
关键字,在定义过后的任意位置都可以访问;对于函数体内部定义的静态变量,定义时需要加 static 关键字,静态变量只能在函数体内部访问;全局变量和静态变量的共同点就是函数运行结束对应的存储空间不会被释放.
20. cookie会把数据保存在 浏览器端 ,session会把数据保存在 服务器端 ,执行$_SESSION[‘aaa’]=’bbb’这句代码,就向session中保存了一个键值对的数据,键名是
aaa ,键值是 bbb .
21. HTTP 协议是一组在Web上传输文件的规则,例如文本、图形图像、声音、视频和其他多媒体文件,该协议位于应用层,它是建立在传输层 TCP 协议的基础上.
得 分
评卷人
三、简答题 (每小题6分,共30分)
22.什么是PHP,PHP有哪些优点?
PHP是一种服务器端的开发语言,其独特的语法混合了C语言、Java语言和Perl语言的特点,是一种广泛应用的开源式多用途脚本语言,尤其适合动态网页的开发.
PHP的特点:安全性高、跨平台、支持广泛的数据库、简单、执行速度快、免费、模块化、支持面向对象的编程.
23.分析get提交表单数据和post提交表单数据的特点,使用场合
不管是get提交方法还是post提交方法,提交的数据都是键值对,键名就是表单控件的名字,键值就是用户在表单控件中输入的值;
get提交方式会把提交的键值对附加在url后面,以?分割URL和传输数据,多个参数用&连接;get提交方法使用$_GET全局数组接收数据;
post提交方式会把提交的键值对放置在http请求包的包体中;post提交方法使用$_POST全局数组接收数据;
在提交的数据量大或者对安全性要求高的场合,应该使用post提交方法.
24.在PHP中,哪些数值被强制转化为布尔类型后,得到false?
1.布尔值false
2.整数值0
3.浮点数值0.0
4.空字符串和字符串“0”
5.没有单元的数组
6.没有单元的对象
7.特殊类型NULL
25.解释session_start()函数和session_destroy()函数的作用
对于session_start()函数,如果我们第一次调用,就会创建一个新的 session;如果不是第一次调用,就会启动原来创建的session;只要对session进行操作,就要调用session_start()函数!对于session_destroy()函数,只要调用了这个函数,session中保存的所有信息都会失效,整个session占据的内存空间都会被释放.
26.在mysql数据库中建立一个学生信息表,表名studentinfo,字段如下:
id (表示学号,整型,主键,自增长)
name (表示姓名,最长18个字符)
sex (表示性别,取2个字符)
age (表示年龄,整型)
address (表示家庭地址,最多200个字符)
email (表示电子邮箱,最多100个字符)
在此基础上,写出查询表中年龄大于等于20岁所有学生全部信息的SQL语句
create table studentinfo(
id int primary key auto_increment,
name varchar(18),
sex varchar(2),
age int,
address varchar(200),
email varchar(100)
);
select * from studentinfo where age>=20;
四、程序设计题(每空3分,共24分)
27.利用php计算1+2+3+...+100的结果,根据提示完成程序.
<?php
header("Content-type:text/html;charset=gb2312") ;//告诉浏览器返回的网页采用gb2312编码,解决浏览器中文乱码的问题
$sum=0 ;//初始化累加变量,变量名为sum
//接下来通过for循环完成1+2+3+...+100的计算
for($i=1;$i<=100;$i++)
{
$sum=$sum+$i ;
}
echo "1+2+3+...+100的结果是".$sum;//向浏览器输出程序计算的结果
?>
28. 根据提示补全程序,实现从数据库中查询学生信息,并且加以显示的动态网页.
这里只给出了<body></body>之间的内容
<body>
<center>
<h2>显示所有信息</h2>
<table>
<tr>
<td>用户名</td><td>性别</td><td>地址</td><td>联系方式</td>
</tr>
<?php
$connect= mysql_connect ("127.0.0.1","root","root");//连接数据库,注意,第一个参数为数据库主机的ip地址,第二个参数为数据库用户名,第三个参数为数据库用户密码,根据自己的机器填写密码
mysql_select_db ("examdb",$connect);//选择数据库,第一个参数为数据库名字,第二个参数是mysql_connect函数返回的连接全局唯一标志
mysql_query("set names utf8");//指定编码格式,避免乱码
$sql="select * from examtable";//准备sql查询命令,该命令查询所有的数据,因为没有附加任何查询条件,*代表查询所用的字段
$result= mysql_query ($sql,$connect);//向数据库发送sql命令,第一个参数是sql命名字符串,库名字,第二个参数是mysql_connect函数返回的连接全局唯一标志
while($arval= mysql_fetch_array ($result))//mysql_fetch_array把mysql_query返回的查询结果解析为数组,每次取一行,只要还要下一行,循环就继续
{
echo "<tr><td>".$arval['name']."</td><td>".$arval['sex']."</td><td width=\"250px\">".
$arval['address']."</td><td>".$arval['phone']."</td></tr>";
}//调用echo语句把相应的包含查询结果信息的html代码输出给浏览器,经过浏览器翻译后就是用户看到的网页,注意,这里的.好用来对字符串进行拼接,例如"aaa"."bbb"="aaabbb"
?>
</table>
<a href="index.html">点击插入信息</a>
</center>
</body>
展开阅读全文