php程序员hr面试题,PHP程序员面试题及答案解析大全

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-31 21:58   11   0

一、选择题(共30题,每题1分,总30分)

*如果没有特别指明,试题中的数据库均指mysql

1、下列不属于PHP的开始结束标记的是:( )

A、<?php ?>

B、 ?>

C、

D、< >

2、下列程序的输出结果为( )

function test($a){

$a=’456’;

}

$a=’123’;

test($a);

echo $a++;

?>

A、456

B、123

C、124

D、会报错

3、下列代码的输出结果为( )

$a=’hello world’;

echo ‘$a’.”$a”;

?>

A、hello worldhello world

B、$ahello world

C、$a$a

D、hello world

4、下列代码的输出结果为( )

function test($i)

{

return ++$i+5;

}

echo test(1);

?>

A、6

B、7

C、8

D、空

5、下列代码的输出结果为( )

$a=’123’;

$b=&$a;

$a=’789’;

$b=’456’;

echo $a;

?>

A、123

B、456

C、789

D、空

6、对以下代码输出描述正确的是( )

$array=array(1,2,3,4,’a’=>456);

foreach($array as $key=>$value)

{

echo $key;

}

?>

A、输出的是数组元素的值

B、输出$key

C、输出1234a

D、输出0123a

7、对以下代码的输出描述正确的是( )

class test{

var $a='hello world';

function __construct()

{

$this->a='good one';

}

}

$test = new test();

echo $test->a;

?>

A、输出hello world

B、输出good one

C、输出为空

D、有语法错误

8、关于以下代码的描述错误的是( )

a小于100

<?php elseif($a>100):?>

a大于100

a等于100

A、这段代码是一个if控制结构

B、代码意图使用if结构进行流程控制,但有语法错误

C、代码中的:号可以替换成{

D、代码中的;号可以替换成}

9、假设一个变量$a的值为以下json对象,下列说法中不正确的是( )

stdClass Object ( [0] => 1 [1] => 2 [2] => 3 [b] => 123 )

A、<?php echo $a->b;?>将输出123

B、可以使用foreach循环该json对象中的所有值

C、$a的值是一个对象数组

D、<?php echo count($a);?>输出4

10、对以下代码的描述不正确的是( )

$a=100;

try{

if(is_object($a))

{

echo $a->a;

}

else

{

throw new Exception('变量不是对象');

}

}catch(Exception $e){

echo $e->getMessage();

}

?>

A、这段代码进行了异常处理

B、代码将输出:变量不是对象

C、代码会报错,不会有任何正常输出

D、每一个 try 至少要有一个与之对应的 catch

11、对下列sql语句的描述正确的是( )

SELECT * FROM `user` LIMIT 1 , 2

A、该语句将查询出数据库中前2条数据

B、该语句将查询出数据库中的第2和第3条数据

C、该语句将对数据库中的数据进行倒序查询

D、该语句中的LIMIT子句有错误,应该以0开头

12、关于“如何倒序输出一个字符串”的算法描述错误的是,假设字符串变量为$str( )

A、计算出字符串的长度,然后使用for循环从最后一个字符向前输出

B、使用strrev函数

C、在从后向前输出字符时,可以采用字符串截取和$str[索引]或$str{索引}的形式

D、使用array_pop函数依次弹出字符数组中的最后一个元素

13、下列脚本的输出结果是( )

$str="你好啊,china!";

echo substr($str,-4,2);

?>

A、in

B、hi

C、na

D、ch

14、下列关于“计算1-100之间数的和”的算法描述正确的是( )

A、设置一个变量存储和的值,使用for循环对和进行依次累加

B、直接将等差数列的求和公式用PHP语言表示,然后确定公差、首项等参数进行求和

C、初始化一个存储1-100的数组,然后使用数组求和函数array_sum

D、以上说法都正确

15、关于以下脚本的输出描述正确的是( )

function cmpnum($a,$b){

if($a>$b){

$t=$a;

$a=$b;

$b=$t;

}

echo $a.'-'.$b;

}

cmpnum(5,4);

?>

A、输出1

B、输出-1

C、输出4-5

D、输出5-4

16、对下列脚本描述错误的是( )

$a='abc';

$abc=123;

echo $$a;

?>

A、脚本输出123

B、脚本使用了可变变量

C、脚本输出abc123

D、echo $$a;相当于echo $abc;

17、要查询user表中id为100的数据,如何写sql语句( )

A、select * from user where id>100

B、select * from user where id<100

C、select * from user where id<>100

D、select * from user where id=100

18、test表中只有一个reg_time字段,类型为datetime,要向该字段写入当前的时间,如何写sql语句( )

A、INSERT INTO `test` (`reg_time`) VALUES ('NOW()');

B、INSERT INTO `test` (`reg_time`) VALUES (NOW());

C、INSERT INTO `test` (`reg_time`) VALUES ('time()');

D、INSERT INTO `test` (`reg_time`) VALUES (time());

19、test表中只有id,sum两个字段,类型均为int,sum字段属性为空,id字段属性为unsigned现在要对该表中id为1的记录的sum字段进行更新操作,并且每更新一次sum字段的值要减1,如何写sql语句( )

A、UPDATE `test` SET `sum` = `sum`-1 WHERE id =1 ;

B、UPDATE `test` SET `sum` = `sum`-'1' WHERE id =1 ;

C、UPDATE `test` SET `sum` = `sum`+'1' WHERE id =1 ;

D、UPDATE `test` SET `sum` = 'sum-1' WHERE id =1 ;

E、AB均正确

20、PHP中,将@符合置于变量或函数名前面,有什么作用( )

A、可以提高函数的运行效率

B、可以自动为变量进行初始化

C、可以抑制出错时的错误信息

D、起注释作用

21、在数据库的content表中,当前记录的id是5,请写出读取下一条记录的sql语句(默认按id升序排列)( )

A、select * from content where id=6

B、select * from content where id=4

C、select * from content where id>5 limit 0,1

D、select * from content where id<5 limit 1

22、关于以下代码的输出,正确的是( )

$a=null;

$b='123';

echo $a|$b;

?>

A、null

B、123

C、空

D、0000

23、当前有一个名为father的类,现在要写一个名为son的类来继承father类(father类非抽象类),正确的继承语法是( )

A、class son ext father{

//省略其它代码

}

B、class father extends son{

//省略其它代码

}

C、class son extends father{

//省略其它代码

}

D、class son extend father{

//省略其它代码

}

24、有一个test类如下所示,下列说法中错误的是( )

class test{

var $show='123';

static function show(){

echo 'hello world';

}

}

?>

A、使用test::show();将输出hello world

B、使用

$test=new test();

$test->show();

将输出hello world

C、echo test::show;将输出123

D、使用

$test=new test();

echo $test->show;

将输出123

25、country表中存储了各个国家奥运会获得奖牌的记录数,有这么几个字段:id,name,type,num。字段的意义分别是:唯一记录,国家名,奖牌类型(金银铜),奖牌数。现在要查询出所有国家获得奖牌的总数,如何写sql语句( )

A、select * from country group by name

B、select sum(num) from country

C、select name,sum(num) from country group by name

D、select sum(num) from country group by num

26、关于以下代码的输出,正确的是( )

for($i=0;$i<100;$i++){

if($i==50)

break;

}

echo ++$i;

?>

A、空

B、50

C、51

D、52

27、关于以下代码的输出,正确的是( )

$i=10;

switch($i){

case "123":

echo '123';

case "456";

echo '456';

case "10":

$i++;

case "11":

echo $i;

}

?>

A、无输出

B、10

C、11

D、12

28、关于以下代码的输出,正确的是( )

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP