1.在PHP面向对象中,关于__call()方法描述错误的是( ):

 A.__call方法在调用对象中不存在的方法时自动调用的。

 B.__call方法有两个参数。

 C.格式如下: function __call($方法名,$参数数组){ //..... }

 D.__call方法在使用对象报错时自动调用的。

2.$a="hello";$b= &$a;unset($b);$b="world";echo $a;的结果是什么?( )

 A.hello

 B.world

 C.NULL

 D.unset

3.<?php $var = FALSE; if (empty($var)){ echo"null"; }else{ echo"have value"; }?>

程序运行结果为:( )

 A.null

 B.have value

 C.无法确定

 D.什么也不显示,提示错误

4.<? function p(){ return 1; } if (p()){ echo“false”; }else{ echo“true”; }?>

代码返回的结果为:( )

 A.true

 B.false

 C.程序运行出错

 D.根据版本来定

5.<?php  if ($a<10){    if($b>11){       if($c==10&& $d != $c) {          $x=0;       }else {         $x=1;       }    }  }?>

哪个三元运算符相当于此脚本()

 A.$x = ($a < 10 || $b > 11 || $c == 10 && $d !=$c ) ? 0 : 1;

 B.$x = (($a < 10 && $b > 11) || ($c == 10&& $d !=$c ) ) ? 0 : 1;

 C.$x = ($a < 10 && $b > 11 && $c == 10 && $d !=$c ) ? 0 : 1;

 D.以上都不是

6.<?php class A{  public function __construct(){      echo "Class A...<br/>";  }}class B extends A{ public function __construct(){   echo "Class B...<br/>";  }}   new B();?>

代码输出内容是(   ) 

 A.Class B...

 B.Class A... Class B...

 C.Class B...Class A...

 D.Class A...

7.在PHP面向对象中,下面关于final修饰符描述错误的是( )

 A.使用final标识的类不能被继承

 B.在类中使用final标识的成员方法,在子类中不能被覆盖

 C.不能使用final标识成员属性

 D.使用final标识的成员属性,不能在子类中再次定义

8.阅读下面PHP代码,并选择输出结果( ) 

<?php class A{ public static $num=0; public function __construct(){ self::$num++; } } new A(); new A();

 A.0

 B.1

 C.2

 D.3

9.阅读下面PHP代码,并选择输出结果( ) 

<?php class A{ public static $num=0; public function __construct(){ self::$num++; } } new A(); new A(); new A(); echo A::$num;?>

 A.0

 B.1

 C.2

 D.3

10.阅读下面PHP代码,并选择输出结果( )

<?php class A{ public $num=100; }$a = new A();$b = $a;$a->num=200;echo $b->num;?>

 A.100

 B.200

 C.没有输出

 D.程序报错!

11.下面关于PHP抽象类描述错误的是:( )

 A.PHP中抽象类使用abstract关键字定义.

 B.没有方法体的方法叫抽象方法,包含抽象方法的类必须是抽象类。

 C.抽象类中必须有抽象方法,否则不叫抽象类。

 D.抽象类不能实例化,也就是不可以new成对象。

12.在PHP面向对象中,关于__call()方法描述错误的是( ):

 A.__call方法在调用对象中不存在的方法时自动调用的。

 B.__call方法有两个参数。

 C.格式如下: function __call($方法名,$参数数组){ //.....}

 D.__call方法在使用对象报错时自动调用的。

13.除了使用function __construct()定义构造方法外,还可以使用( )

 A.function  __destruct()

 B.function 类名()

 C.function  __tostring()

 D.function __call()

14.获得实例化对象所属类名字的函数( )?

 A.get_class()

 B.get_object_vars()

 C.get_class_methods()

 D.get_classname()

15.如果在PHP中使用Oracle数据库作为数据库服务器,应该在PDO中加载下面哪个驱动程序?()

 A.PDO_DBLIB

 B.PDO_MYSQL

 C.PDO_OCI

 D.PDO_ODBC

16.PDO提供了多种不同的错误处理模式,不仅可以满足不同风格的编程,也可以调整扩展处理错误的方式。下面哪个不是PDO提供的错误处理模式 ?()

 A.ERRMODE_SILENT

 B.ERRMODE_WARNING

 C.PDO::ERRMODE_ERROR

 D.ERRMODE_EXCEPTION

17.PDO通过执行SQL查询与数据库进行交互,可以分为多种不同的策略,使用哪一种方法取决于你要做什么操作。如果向数据库发送DML语句,下面哪种方式最合适?()

 A.使用PDO对象中的exec()方法

 B.使用PDO对象中的query()方法

 C.使用PDO对象中的prepare()和PDOStatement对象中的execute()两个方法结合

 D.以上方式都可以

18.PDO::ATTR_ERRMODE设置为以下哪个值时,PDO会抛出PDOException?()

 A.PDO::ERRMODE_SILENT

 B.PDO::ERRMODE_WARNING

 C.PDO::ERRMODE_EXCEPTION

 D.PDO::errorInfo()

19.使用mysqli对象中的affected_rows属性,对哪个操作没有影响?()

 A.SELECT

 B.DELETE

 C.UPDATE

 D.INSERT

20.使用mysqli扩展可以很方便地完成数据库的事务处理功能,下面对数据库事务处理的描述中不正确的是?()

 A.MySQL目前只有InnoDB和BDB两个数据表类型才支持事务

B.MySQL是以自动提交(autocommit)模式运行的,必须执行mysqli对象中的autocommit(0)方法关闭MySQL事务机制的自动提交模式

 C.调用mysqli类对象的commit()方法提交事务

 D.调用mysqli类对象的rollback()方法撤销事务,并开启自动提交模式运行

21.下面的脚本运行以后,$array数组所包含的值是什么?( )<?php$array = array(‘1’,’1’);foreach ($array as $k=>$v){ $v = 2;}?>

 A.array (‘2’ , ‘2’)

 B.array (‘1’ , ‘1’)

 C. array (2 , 2)

 D.array (Null , Null)

 

请把你的答案写在留言区。