·1. 请问下面会输出什么
$a="hello";
$b=&$a;
unset($b);
$b="world";
echo $a;
请问会输出什么hello
关键点:
$a = &$b;
既不是a 指向 b,
也不是b 指向 a,
而是a,b共同指向一个地址.
所以,a,b一改则全改.
但unset某一个变量,并不影响对方.
- <?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.以上都不是
解析:三元运算符是水平层级的运算,而多层if嵌套是一种递进的运算。无法表示的。。。
- 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
知识点:PHP
解析:static属性常驻内存
- 阅读下面PHP代码,并选择输出结果( )<?php class A{ public $num=100; }$a = new A();$b = $a;$a->num=200;echo $b->num;?>
A.100
B.200
C.没有输出
D.程序报错!
知识点:PHP
解析:在php5,一个对象变量已经不再保存整个对象的值。只是保存一个标识符来访问真正的对象内容。 当对象作为参数传递,作为结果返回,或者赋值给另外一个变量,另外一个变量跟原来的不是引用的关系,只是他们都保存着同一个标识符的拷贝,这个标识符指向同一个对象的真正内容。
- 11.下面关于PHP抽象类描述错误的是:( )
A.PHP中抽象类使用abstract关键字定义.
B.没有方法体的方法叫抽象方法,包含抽象方法的类必须是抽象类。
C.抽象类中必须有抽象方法,否则不叫抽象类。
D.抽象类不能实例化,也就是不可以new成对象。
知识点:PHP
解析:抽象类可以是个空类,也就是不一定需要有抽象方法。但抽象方法只能存在抽象类中
- 12.在PHP面向对象中,关于__call()方法描述错误的是( ):
A.__call方法在调用对象中不存在的方法时自动调用的。
B.__call方法有两个参数。
C.格式如下: function __call($方法名,$参数数组){ //.....}
D.__call方法在使用对象报错时自动调用的。
知识点:PHP
解析:__call方法在调用对象中不存在的方法时自动调用的。
7 除了使用function __construct()定义构造方法外,还可以使用( )
A.function __destruct()
B.function 类名()
C.function __tostring()
D.function __call()
- 获得实例化对象所属类名字的函数( )?
A.get_class()
B.get_object_vars()
C.get_class_methods()
D.get_classname()
知识点:PHP - 如果在PHP中使用Oracle数据库作为数据库服务器,应该在PDO中加载下面哪个驱动程序?
A.PDO_DBLIB
B.PDO_MYSQL
C.PDO_OCI
D.PDO_ODBC
知识点:php
解析:pdo_oci 扩展会替代 pdo 扩展实现 oracle 数据库 api
10 PDO通过执行SQL查询与数据库进行交互,可以分为多种不同的策略,使用哪一种方法取决于你要做什么操作。如果向数据库发送DML语句,下面哪种方式最合适?
A.使用PDO对象中的exec()方法
B.使用PDO对象中的query()方法
C.使用PDO对象中的prepare()和PDOStatement对象中的execute()两个方法结合
D.以上方式都可以
知识点:PHP
解析:有用户输入数据的时候更偏向于用C,防止sql注入
网友评论