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 练习题的更多相关文章

  1. Linux基础练习题(二)

    Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...

  2. shell 脚本之 shell 练习题汇总

    整理了一些 shell 相关的练习题,记录到这里. 1. 请按照这样的日期格式 xxxx-xx-xx 每日生成一个文件,例如:今天生成的文件为 2013-09-23.log, 并且把磁盘的使用情况写到 ...

  3. MySQL练习题

    MySQL练习题 一.表关系 请创建如下表,并创建相关约束 二.操作表 1.自行创建测试数据 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 3.查询平均成绩大于60分的同学的学号和平均成 ...

  4. MySQL练习题参考答案

    MySQL练习题参考答案 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 思路: 获取所有有生物课程的人(学号,成绩) - 临时表 获取所有有物理课程的人(学号,成绩) - 临时表 根据[ ...

  5. mysql练习题-查询同时参加计算机和英语考试的学生的信息-遁地龙卷风

    (-1)写在前面 文章参考http://blog.sina.com.cn/willcaty. 针对其中的一道练习题想出两种其他的答案,希望网友给出更多回答. (0) 基础数据 student表 +-- ...

  6. 【UOJ#228】基础数据结构练习题 线段树

    #228. 基础数据结构练习题 题目链接:http://uoj.ac/problem/228 Solution 这题由于有区间+操作,所以和花神还是不一样的. 花神那道题,我们可以考虑每个数最多开根几 ...

  7. 【Java EE 学习 28 下】【Oracle面试题2道】【Oracle练习题3道】

    一.已知程序和数据 create table test1 (id int primary key, name ), money int); ,); ,); ,); ,); 要求根据下图写出相应的sql ...

  8. 从一道NOI练习题说递推和递归

    一.递推: 所谓递推,简单理解就是推导数列的通项公式.先举一个简单的例子(另一个NOI练习题,但不是这次要解的问题): 楼梯有n(100 > n > 0)阶台阶,上楼时可以一步上1阶,也可 ...

  9. 《java编程思想》读书笔记 暂停一段时间,改为上面的练习题

    发现个很尴尬的现象.我一天实在看得太快了...全写下 写博客都得一晚上.. 之前因为是第一次看这么厚的书,别人都说很难,以为会看很慢的.然而,已经完全学过Java的 我感觉没啥压力,越看越快....第 ...

  10. 很不错的sql练习题(select)

      创建表和输入数据 CREATE TABLE STUDENT (SNO VARCHAR(3) NOT NULL,    SNAME VARCHAR(4) NOT NULL,    SSEX VARC ...

随机推荐

  1. webfrom 总结

    网上看了很多理论,然而知易行难.在实际工作中还是存在很多问题. 下面是使用webform过程中的总结. 1.不使用服务端控件 表单有post和get两种方法,可以通过 form methed='pos ...

  2. java面向对象---对象容器

    泛型类--ArrayList<>; 2.对象数组中的每个元素都是对象的管理者而并非对象本身!!!!! 3.java类的基本数据类型 基本数据类型 包装类 byte Byte short S ...

  3. 架构师养成记--12.Concurrent工具类CyclicBarrier和CountDownLatch

    java.util.concurrent.CyclicBarrier 一组线程共同等待,直到达到一个公共屏障点. 举个栗子,百米赛跑中,所有运动员都要等其他运动员都准备好后才能一起跑(假如没有发令员) ...

  4. 架构师养成记--8.Queue

    一.ConcurrentLinkedQueue 是一个适合在高并发场景下,无锁,无界的,先进先出原则.不允许为null值,add().offer()加入元素,这两个方法没区别:pull().peek( ...

  5. ffmpeg获取文件的总时长(mp3/mp4/flv等)

    使用ffmpeg.exe获取文件属性信息,C#中可以在进程外异步调用这个工具,如下: using (System.Diagnostics.Process pro = new System.Diagno ...

  6. pecl 轻松安装php扩展

    PECL 的全称是 The PHP Extension Community Library ,是一个开放的并通过 PEAR(PHP Extension and Application Reposito ...

  7. prefix pct文件配置Xcode

    1.查看项目的各个文件夹下的文件名称: 2.配置如下图:需要添加$(SRCROOT)/项目的名称/pch所在文件夹路径 .易于理解方便那些初学者,下载别人的demO运行时遇到这样的类似的问题噢.< ...

  8. python学习笔记-(十四)I/O多路复用 阻塞、非阻塞、同步、异步

    1. 概念说明 1.1 用户空间与内核空间 现在操作系统都是采用虚拟存储器,那么对32位操作系统而言,它的寻址空间(虚拟存储空间)为4G(2的32次方).操作系统的核心是内核,独立于普通的应用程序,可 ...

  9. github拉取和推送

    登入github 创建一个开源项目 然后打开安装好的git 首先进入一个指定的文件夹 例如: 1)E:\>cd miaov/testGit 回车 进入E盘的testGit文件夹 2)E:\mia ...

  10. php验证身份证号码的正确性

    /********************php验证身份证号码是否正确函数*********************/function is_idcard( $id ) {   $id = strto ...