一:选择题(单项选择,每题2分):
1. LAMP具体结构不包含下面哪种(a )
A:Windows系统
B:Apache服务器
C:MySQL数据库
D:PHP语言
LAMP中的L为linux系统
2. 以下哪个SQL语句是正确的(d )
A:insert into users (‘p001’,’张三’,’男’);·····缺少参数values
B:create table (Code int primary key); ·········缺少表名
C:update users Code=’p002’ where Code=’p001’;····缺少修改关键词set
D:select Code as ‘代号’ from users;
3. 以下哪种类型是B/S架构的正确描述(c)
A:需要客户安装客户端
B:不需要安装就可以使用
C:依托浏览器的网络系统
D:不需要服务器的系统
B/S结构,即Browser/Server,浏览器/服务器模式,客户机上只需要安装浏览器就能有服务器上的数据库进行数据交互;
C/S结构,即Client/Server,客户机/服务器结构,通过客户端进行数据处理
4 .php中哪个语句可以输出变量类型(c )
A:echo······输出多个字符串
B:print···· ·输出单个字符串
C:var_dump()
D:print_r()··· 输出数组信息
5 .php定义变量正确的是( b )
A:var a = 5;
B: $a = 10;
C:int b = 6;
D:var $a = 12;
6 .php中单引号和双引号包含字符串的区别正确的是(d)
A:单引号速度快,双引号速度慢
B:双引号速度快,单引号速度慢
C:单引号里面可以解析转义字符
D:双引号里面可以解析变量
双引号可以解析转义字符和变量,单引号不可以
7 .若x,y为整型数据,以下语句执行的$y结果为(b)
$x = 1;
++$x;
$y =$x++;
A:1 B:2 C:3 D:0
8 .php中关于字符串处理函数以下说法正确的是(c)
A:implode( )方法可以将字符串拆解为数组
B:str_replace()可以替换指定位置的字符串
C:substr( )可以截取字符串
D:strlen( )不能取到字符串的长度
implode(),把数组元素组合为字符串;str_replace(查找的值,替换查到值的值,被搜索的字符串),替换字符串中的字符;
substr("字符串",返回从何处开始正数从头开始负数从尾开 始),返回字符串的一部分;strlen(),输出字符串的长度
9 .以下代码运行结果为:(a)
<?php
$first = "This course is very easy !";
$second = explode(" ",$first);
$first = implode(",", $second);
echo $first;
?>
A This,course,is,very,easy,!
B This course is very easy !
C This course is very easy !,
D 提示错误
explode(),把字符串拆分为数组,第一个参数规定在哪里拆分,第二个参数为被拆分的字符串
10 .以下程序横线处应该使用的函数为:(b )
<?php
$email = ‘langwan@thizlinux.com.cn’;
$str = ____($email,‘@’);
$info = ____(‘.’,$str);
____($info);
?>
输出结果为:
Array ([0] => @thizlinux [1]=>com[2]=>cn)
A:strchr, split, var_dump
B:strstr, explode, print_r
C:strstr,explode, echo
D:strchr, split, var,_dump
strstr()搜索字符串在另一字符串中的第一次出现,并返回剩余部分
参数一规定被搜索的字符串;
参数二规定搜索的字符串,若为数字则搜索对应的ASCII码字符;
参数三可选,默认false,若设置为true将返回第一次出现之前的字符串部分
strchr是strstr的别称
str_split(),把字符串分割后放在数组中
参数一为被分割的字符串;参数二可选,默认为1,分割后数组元素的长度
11、下列说法正确的是:(b )
A. 数组的下标必须为数字,且从“0”开始
B. 数组的下标可以是字符串
C. 数组中的元素类型必顺一致
D. 数组的下标必须是连续的
12、下面哪项描述是错误的?( a )
A. 父类的构造函数与析构函数不会自动被调用
B. 成员变量需要用public protected private修饰,在定义变量时不再需要var关键字
C. 父类中定义的静态成员,不可以在子类中直接调用
D. 包含抽象方法的类必须为抽象类,抽象类不能被实例化
13、关于exit( )与die( )的说法正确的是( c)
A、当exit( )函数执行会停止执行下面的脚本,而die()无法做到
B、当die()函数执行会停止执行下面的脚本,而exit( )无法做到
C、die()函数等价于exit()函数
D、die()函数于exit()函数没有直接关系
14、下面程序运行结果(b )
<?php
$nextWeek = time() + (7 * 24 * 60 * 60);
echo 'Now: '. date('Y-m-d') ."
";
echo 'Next Week: '. date('Y-m-d', $nextWeek) ."
";
?>
A、得到今天的日期(月-日)
B、得到今天的日期(年-月-日)与下周的日期(年-月-日)
C、得到现在的时间(小时-分-秒)
D、得到现在到下周的时间间隔
15、以下代码执行结果为:(d)
<?php
functionprint_A(){
$A = "phpchina";
echo "A值为: ".$A."<p>";
//return ($A);
}
$B = print_A();
echo "B值为: ".$B."<P>";
?>
A A值为:
B值为:
B A值为:
B值为: phpchina
C A值为: phpchina
B值为: phpchina
D A值为: phpchina
B值为:
print_A函数中的返回值被注释,所以变量B调用函数后没有输出
16、以下代码执行结果为:(c )
<?php
$A="Hello ";
functionprint_A()
{
$A = "phpmysql !!";
global $A;
echo $A;
}
echo $A;
print_A();
?>
A Hello
B phpmysql !!
C Hello Hello
D Hello phpmysql !!
global调用变量A为全局变量
17、以下代码输出的结果是( b )
$a = "aa";
$aa = "bb";
echo $$a;
A aa
B bb
C $aa
D $$a
18、以下代码输出的结果是(a )
<?php
$a = 10;
$b = &$a;
echo $b;
$b = 15;
echo $a;
?>
A 1015
B 1010
C 1515
D 1510
&表示变量的地址,加在变量之前
19、php输出拼接字符串正确的是( c)
A echo $a+”hello”
B echo $a+$b
C echo $a.”hello”
D echo ‘{$a}hello’
php中字符串的拼接使用.
20、在用浏览器查看网页时出现404错误可能的原因是 (b )
A 页面源代码错误
B 文件不存在
C 与数据库连接错误
D 权限不足
21、以下代码输出的结果为(d )
<?php
$attr = array("0"=>"aa","1"=>"bb","2"=>"cc");
echo $attr[1];
?>
A 会报错!
B aa
C 输出为空
D bb
22、面向对象的三大特性中哪个不属于封装的做法(b )
A 将成员变为私有的
B 将成员变为公有的
C 封装方法来操作成员
D 使用__get()和__set()方法来操作成员
23、php的源码是(a )
A.开放的 B.封闭的 C.需购买的 D.完全不可见的
24、php如何输出反斜杠( d )
A.
B.
C. D.\
25、下列哪项不属于OOP的三大特性(b )
A:封装 B:重载 C:继承 D:多态
26、以下关于字符串的说法正确的是(c )
A:echo “hello
world”;在页面可以实现换行····<br>在页面可以实现换行
B:echo ‘helloworld{$a}’;可以解析变量a的值·· ·单引号无法解析变量,双引号可以
C:$str=<<<AA
Hello world
AA;
该方式可以定义字符串
D:print $a,”hello”;可以输出数据不报错·······print只能输出单个字符串
27、下列说法不正确的是( d)
A:list()函数可以写在等号左侧
B:each()函数可以返回数组里面的下一个元素
C:foreach()遍历数组的时候可以同时遍历出key和value
D:for循环能够遍历关联数组
for循环只能便利索引数组
28、关于面向对象的说法不正确的是(c )
A:OOP是面向对象的简称
B:静态成员是属于类的
C:普通成员是属于类的
D:类里面的$this关键字代表该对象本身
普通成员是属于对象的
29、下列定义函数的方式是正确的( b)
A:public void Show(){ }
B:function Show($a=5,$b){ }
C:function Show(a,b){ }
D:functionShow(int $a){ }
30、下面哪个选项没有将 john 添加到 users 数组中? (b)
A. $users[] = "john";
B. array_add($users, "john");
C. array_push($users, "john");
D. $users [“aa”]= "john" ;
31、php中以下能输出1到10之间的随机数的是(c )
A:echo rand();
B:echorand()*10;
C:echo rand(1,10);
D:echorand(10);
32、php中以下能输出当前时间格式像:2016-5-6 13:10:56 的是(d )
A:echodate(“Y-m-d H:i:s”);
B:echo time();
C:echodate();
D:echotime(“Y-m-d H:i:s”);
33、以下哪项不属于函数的四要素( d )
A:返回类型
B:函数名
C:参数列表
D:访问修饰符
函数的四要素:返回类型,函数名,参数列表,函数体
34、以下说法正确的是(c)
A:@符号可以屏蔽所有错误······@只能屏蔽一般错误
B:exit;后面的语句可以继续执行···exit后终止执行
C:10/4得出的结果是2.5
D:$$a;这种写法是错误的
35、以下关于构造函数说法不正确的是( b )
A:研究一个类,首先我们要研究的函数是构造函数
B:构造函数写法和普通函数没有区别
C:构造函数执行比较特殊
D:如果父类中存在构造函数并且需要参数,子类在造对象的时候也应该传入相应的参数。
构造函数的写法特殊,执行时间也特殊
36、以下关于多态的说法正确的是( d )
A:多态在每个对象调用方法时都会发生
B:多态是由于子类里面定义了不同的函数而产生的
C:多态的产生不需要条件
D:当父类引用指向子类实例的时候,由于子类对父类的方法进行了重写,在父类引用调用相应的函数的时候表现出的不同称为多态。
37、以下代码在页面上会输出多少行数据(a)
$attr = array(1,2,3,4);
while(list($key,$value) = each($attr))
{
echo $key."=>".$value."<br>";
}
while(list($key,$value) = each($attr))
{
echo $key."=>".$value."<br>";
}
A:4B:6 C:8 D:12
each() 函数返回当前元素的键名和键值,并将内部指针向前移动
38、以下说法正确的是(c )
A:$attr代表数组,那么数组长度可以通过$attr.length取到
B:unset()方法不能删除数组里面的某个元素
C:php的数组里面可以存储任意类型的数据
D:php里面只有索引数组
php中count()函数用于获取数组长度;unset()用于销毁指定变量;php中除了索引数组外还有关联数组
39、以下说法不正确的是( b)
A:模糊查询使用的关键字是like
B:排序查询asc是降序,desc是升序
C:分页查询使用的关键字是limit
D:mysql如果只安装服务不安装界面也可以正常使用
排序查询升序为desc,降序为asc
40、以下代码输出的结果为(d )
$a = "cc";
$cc = "dd";
echo $a=="cc"?"{$$a}":$a;
A:cc
B:$a
C:$$a
D:dd
二、判断题(共10题,每题2分)
1.php中布尔类型数据只有两个值:真和假。( √ )
2.php中连接两个字符串的符号是“+ ”。( × )···使用.连接
3.php可以使用“scanf”来打印输出结果。( × )
4.每个语句结尾都要加“;”来表示语句结束。 ( √ )
5.php变量使用之前需要定义变量类型。( × )···php是弱类型语言,不需要定义变量类型
6.在php中“==”的意思是“等于”。( √ )
7.while和do-while语句都是先判断条件再执行循环体。( × )···while先判断再执行;do—whil先执行再判断
8.“break ”代表的意思是跳出循环。( √ )···continue跳出本次循环执行下次循环
9.若定义数组时省略关键字key,则第三个数组元素的关键字为3。( × )···数组从0开始第三个关键字为2
10.mysql数据库中查询数据用select语句。( √ )