• 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; 2

     $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') ." ";
    echo 'Next Week: '. date('Y-m-d', $nextWeek) ." ";
    ?>

    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.完全不可见的

    24php如何输出反斜杠( D)

    A.   换行  B.   换行   C.  制表符    D.\

    25、下列哪项不属于OOP的三大特性(B )

    A:封装      B:重载        C:继承        D:多态

    26、以下关于字符串的说法正确的是( C)

    A:echo “hello world”;在页面可以实现换行

    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语句。(     对  )

  • 相关阅读:
    apiAutoTest:基于mitmproxy实现接口录制
    FastAPI + Vue 前后端分离 接口自动化测试工具 apiAutoTestWeb
    FastAPI项目实战:"异步"接口测试"平台"
    apiAutoTest:自动化测试用例中调用自定义函数的实现
    测试笔记01-Git
    C++:常量
    C++: 变量类型
    C++:数据类型
    C++:第一个c++程序
    mitrproxy抓包微信小程序
  • 原文地址:https://www.cnblogs.com/bhmmlxieliming/p/6187638.html
Copyright © 2020-2023  润新知