百分网 > 知识 > 实用知识 > 综合知识 > 《php基础知识测试题及答案》正文

php基础知识测试题及答案

百分网【综合知识】 编辑:良羡 发布时间:2017-09-26 09:27:13

  PHP,是英文超文本预处理语言Hypertext Preprocessor的缩写。其基础知识在编写程序中会经常用到。下面是百分网小编为大家整理的关于php基础知识测试题,希望大家喜欢!

  php基础知识测试题及答案

  一:选择题(单项选择)

  1. LAMP具体结构不包含下面哪种(A )

  A:Windows系统

  B:Apache服务器

  C:MySQL数据库

  D:PHP语言

  2. 以下哪个SQL语句是正确的(D )

  A:insert into users (‘p001’,’张三’,’男’);

  B:create table (Code int primary key);

  C:update users Code=’p002’ where Code=’p001’;

  D:select Code as ‘代号’ from users;

  3. 以下哪种类型是B/S架构的正确描述(C )

  A:需要客户安装客户端

  B:不需要安装就可以使用

  C:依托浏览器的网络系统

  D:不需要服务器的系统

  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( )不能取到字符串的长度

  9 . 以下代码运行结果为:(A )

  $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 提示错误

  10 . 以下程序横线处应该使用的函数为:(B )

  $email = ‘.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. 数组的下标必须是连续的

  12、下面哪项描述是错误的?(C )

  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 )

  $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 )

  function print_A(){

  $A = "phpchina";

  echo "A值为: ".$A."

  ";

  //return ($A);

  }

  $B = print_A();

  echo "B值为: ".$B."

  ";

  ?>

  A A值为:

  B值为:

  B A值为:

  B值为: phpchina

  C A值为: phpchina

  B值为: phpchina

  D A值为: phpchina

  B值为:

  16、以下代码执行结果为:(C )

  $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 )

  $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 )

  $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=<<

  Hello world

  AA;

  该方式可以定义字符串

  D:print $a,”hello”;可以输出数据不报错

  27、下列说法不正确的是(D )

  A:list()函数可以写在等号左侧

  B:each()函数可以返回数组里面的下一个元素

  C:foreach()遍历数组的时候可以同时遍历出key和value

  D: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”);

  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."

  ";

  }

  while(list($key,$value) = each($attr))

  {

  echo $key."=>".$value."

  ";

  }

  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是升序

  C:分页查询使用的关键字是limit

  D:mysql如果只安装服务不安装界面也可以正常使用

  40、以下代码输出的结果为(D )

  $a = "cc";

  $cc = "dd";

  echo $a=="cc" ? "{$$a}":$a;

  A:cc

  B:$a

  C:$$a

  D:dd

  二、判断题(共10题)

  1.php中布尔类型数据只有两个值:真和假。(√ )

  2.php中连接两个字符串的符号是“+ ”。(× )

  3.php可以使用“scanf”来打印输出结果。(× )

  4.每个语句结尾都要加“;”来表示语句结束。 (√ )

  5.php变量使用之前需要定义变量类型。(× )

  6.在php中“==”的意思是“等于”。(√ )

  7.while和do-while语句都是先判断条件再执行循环体。(× )

  8.“break ”代表的意思是跳出循环。(√ )

  9.若定义数组时省略关键字key,则第三个数组元素的关键字为3。(× )

  10.mysql数据库中查询数据用select语句。(√ )

下一页更多精彩“php基础知识测试题及答案”

Copyright © 2010-2017 乾程互联科技(广州)有限公司版权所有 All Rights Reserved

百分网 版权所有 粤ICP备17065803号-2