PHP 练习题
Php基础知识测试题
本试题共40道选择题,10道判断题,考试时间1个半小时
一:选择题(单项选择,每题2分):
1. LAMP具体结构不包含下面哪种(A )
A:Windows系统
B:Apache服务器
C:MySQL数据库
D:PHP语言
2. 以下哪个SQL语句是正确的(D)
A:insert into users value(‘p001’,’张三’,’男’);
B:create table 表名 (Code int primary key);
C:update users set Code=’p002’ where Code=’p001’;
D:select Code as ‘代号’ from users;
3. 以下哪种类型是B/S架构的正确描述( C)
A:需要客户安装客户端 CS
B:不需要安装就可以使用
C:依托浏览器的网络系统
D:不需要 服务器的系统 都需要
4 . php中哪个语句可以输出变量类型(C )
A:echo 同时输出多个字符串
B:print 每次只能输出一个 字符串
C:var_dump() 变量
D:print_r() 数组
5 . php定义变量正确的是( B)
A:var a = 5;JS
B: $a = 10;
C:int b = 6;强类型
D:var $a = 12;不需要有 var
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( )方法可以 将字符串拆解为数组 将数组转化为字符串 /echo implode("--",$attr); //将数组元素拼接成一个字符串
B:str_replace() 查找替换 不 可以替换指定位置的字符串 substr_replace($str,"***",0,5); //替换指定位置的字符串
C:substr( )可以截取字符串 substr($str,0,5); //截取字符串
D:strlen( )不能取到字符串的长度
9 . 以下代码运行结果为:( A )
<?php
$first = "This course is very easy !";
$second = explode(" ",$first); 用空格 拆分字符串 var_dump(explode("|",$str)); //拆分字符串,返回数组
$first = implode(",", $second); 用逗号 拼接 字符串 implode("--",$attr); //将数组元素拼接成一个字符串
echo $first;
?>
A This,course,is,very,easy,!
B This course is very easy !
C This course is very easy !,
D 提示错误
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
11、下列说法正确的是:( B)
A. 数组的下标必须为数字,且从“0”开始
B. 数组的下标可以是字符串
C. 数组中的元素类型必顺一致
D. 数组的下标必须是连续的
在非PHP语言中 A C D 都正确
12、下面哪项描述是错误的?( A C )
A. 父类的构造函数与析构函数不会自动被调用
B. 成员变量需要用public protected private修饰,在定义变量时不再需要var关键字
C. 父类中定义的静态成员,不可以在子类中直接调用
D. 包含抽象方法的类必须为抽象类,抽象类不能被实例化
13、关于exit( )与die( )的说法正确的是(C D ) 使程序终止
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') ."\n";
echo 'Next Week: '. date('Y-m-d', $nextWeek) ."\n";
?>
A、得到今天的日期(月-日)
B、得到今天的日期(年-月-日)与下周的日期(年-月-日)
C、得到现在的时间(小时-分-秒)
D、得到现在到下周的时间间隔
15、以下代码执行结果为:(D )
<?php
function print_A(){
$A = "phpchina";
echo "A值为: ".$A."<p>";
//return ($A); 若返回值 不被注释 选C
}
$B = print_A();
echo "B值为: ".$B."<P>";
?>
A A值为:
B值为:
B A值为:
B值为: phpchina
C A值为: phpchina
B值为: phpchina
D A值为: phpchina
B值为:
16、以下代码执行结果为:( C)
<?php
$A="Hello ";
function print_A()
{
$A = "php mysql !!";
global $A; 全局变量
echo $A;
}
echo $A;
print_A();
?>
A Hello
B php mysql !!
C Hello Hello
D Hello php mysql !!
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’
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.\n 换行 B.\r 换行 C.\t 制表符 D.\\
25、下列哪项不属于OOP的三大特性(B )
A:封装 B:重载 C:继承 D:多态
26、以下关于字符串的说法正确的是( C)
A:echo “hello\nworld”;在页面可以实现换行
B:echo ‘helloworld{$a}’;可以解析变量a的值
C:$str=<<<AA
Hello world
AA;
该方式可以定义字符串
D:print $a,”hello”;可以输出数据不报错
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:function Show(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:echo rand()*10;
C:echo rand(1,10);
D:echo rand(10);
32、php中以下能输出当前时间格式像:2016-5-6 13:10:56 的是( A)
A:echo date(“Y-m-d H:i:s”);
B:echo time();输出时间戳
C:echo date();
D:echo time(“Y-m-d H:i:s”);time 中不可以这么写
33、以下哪项不属于函数的四要素( D)
A:返回类型
B:函数名
C:参数列表
D:访问修饰符
34、以下说法正确的是(C )
A:@符号可以屏蔽所有错误
B: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:4 B:6 C:8 D:12
38、以下说法正确的是( C)
A:$attr代表数组,那么数组长度可以通过$attr.length取到
B:unset()方法不能删除数组里面的某个元素
C:php的数组里面可以存储任意类型的数据
D:php里面只有索引数组
39、以下说法不正确的是( B )
A:模糊查询使用的关键字是like
B:排序查询asc是降序,desc是升序 asc是升序,desc是降序
C:分页查询使用的关键字是limit
D:mysql如果只安装服务不安装界面也可以正常使用
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”来打印输出结果。( 错 )
print_r;专门打印数组的 不在程序中出现 调试错误
4.每个语句结尾都要加“;”来表示语句结束。 ( 对 )
5.php变量使用之前需要定义变量类型。( 错 )
6.在php中“==”的意思是“等于”。( 对 )
7.while和do-while语句都是先判断条件再执行循环体。( 错 )do-while语句先执行循环体再判断条件
8.“break ”代表的意思是跳出循环。( 对 )
9.若定义数组时省略关键字key,则第三个数组元素的关键字为3。( 错 )
因为索引从零开始 所以第三个数组元素的关键字为2
10.mysql数据库中查询数据用select语句。( 对 )
PHP 练习题的更多相关文章
- Linux基础练习题(二)
Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...
- shell 脚本之 shell 练习题汇总
整理了一些 shell 相关的练习题,记录到这里. 1. 请按照这样的日期格式 xxxx-xx-xx 每日生成一个文件,例如:今天生成的文件为 2013-09-23.log, 并且把磁盘的使用情况写到 ...
- MySQL练习题
MySQL练习题 一.表关系 请创建如下表,并创建相关约束 二.操作表 1.自行创建测试数据 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 3.查询平均成绩大于60分的同学的学号和平均成 ...
- MySQL练习题参考答案
MySQL练习题参考答案 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 思路: 获取所有有生物课程的人(学号,成绩) - 临时表 获取所有有物理课程的人(学号,成绩) - 临时表 根据[ ...
- mysql练习题-查询同时参加计算机和英语考试的学生的信息-遁地龙卷风
(-1)写在前面 文章参考http://blog.sina.com.cn/willcaty. 针对其中的一道练习题想出两种其他的答案,希望网友给出更多回答. (0) 基础数据 student表 +-- ...
- 【UOJ#228】基础数据结构练习题 线段树
#228. 基础数据结构练习题 题目链接:http://uoj.ac/problem/228 Solution 这题由于有区间+操作,所以和花神还是不一样的. 花神那道题,我们可以考虑每个数最多开根几 ...
- 【Java EE 学习 28 下】【Oracle面试题2道】【Oracle练习题3道】
一.已知程序和数据 create table test1 (id int primary key, name ), money int); ,); ,); ,); ,); 要求根据下图写出相应的sql ...
- 从一道NOI练习题说递推和递归
一.递推: 所谓递推,简单理解就是推导数列的通项公式.先举一个简单的例子(另一个NOI练习题,但不是这次要解的问题): 楼梯有n(100 > n > 0)阶台阶,上楼时可以一步上1阶,也可 ...
- 《java编程思想》读书笔记 暂停一段时间,改为上面的练习题
发现个很尴尬的现象.我一天实在看得太快了...全写下 写博客都得一晚上.. 之前因为是第一次看这么厚的书,别人都说很难,以为会看很慢的.然而,已经完全学过Java的 我感觉没啥压力,越看越快....第 ...
- 很不错的sql练习题(select)
创建表和输入数据 CREATE TABLE STUDENT (SNO VARCHAR(3) NOT NULL, SNAME VARCHAR(4) NOT NULL, SSEX VARC ...
随机推荐
- 添加webservice调用日志
之前想用spring的AOP给webservice添加切面的,但是使用around切面后,居然调用端得不到webservice的返回结果,而且报文的详细情况也不得而知,很是尴尬,所以偷了个懒.但是该做 ...
- py-faster-rcnn之python引入_caffe.so
本文并不给出"编写一个c++代码,然后编译为.so文件,然后在python中引入"的hello world,需要的请参考:http://www.oschina.net/questi ...
- css3学习--border
http://blog.sina.com.cn/s/blog_61671b520101gelr.html border-radius border-radius: 50px 20px;上下都是50px ...
- (function($){...}) (jQuery)
这里实际上是匿名函数 function(arg){...}这就定义了一个匿名函数,参数为arg 而调用函数 时,是在函数后面写上括号和实参的,由于操作符的优先级,函数本身也需要用括号,即:(funct ...
- WordPress酷炫CSS3读者墙代码
前几日在大前端看到他站点中最新的CSS3读者墙代码,一看效果绚丽的不得鸟,立刻就开始研究了,多次研究未果,可终究是研究出来了,昨天刚成功,今天啊和童鞋来我站说读者墙头像显示不对,我一看,还真是,头像都 ...
- MongoDB【第一篇】MongodDB初识
NoSQL介绍 一.NoSQL简介 NoSQL,全称是”Not Only Sql”,指的是非关系型的数据库. 非关系型数据库主要有这些特点:非关系型的.分布式的.开源的.水平可扩展的. 原始的目的是为 ...
- 4. web前端开发分享-css,js工具篇
web前端开发乃及其它的相关开发,推荐sublime text, webstorm(jetbrains公司系列产品)这两个的原因在于,有个技术叫emmet, http://docs.emmet.io, ...
- Entity framewok 如何实现多条记录作为一条取出, for xml path如何实现
http://www.myexception.cn/linq/1288046.html Entity framewok 怎么实现多条记录作为一条取出, for xml path怎么实现News表:ID ...
- Spring 的动态数据源实现
1. 配置多个数据源 这里以两个c3p0数据库连接池的数据源作为实例.在Spring框架下使用c3p0的数据库需要加入c3p0-0.9.1.2.jar(现在最新的)这个支持包.这里以数据同步项目为例: ...
- XML基础
什么是XML? XML(Extensible Markup Language)可扩展标记语言,是一种以简单文本格式存储数据的方式. 它最重要的组成部分是XML元素,包含了文档的实际数据. XML的几个 ...