PHP笔试试题.docx

上传人:b****1 文档编号:2389493 上传时间:2023-05-03 格式:DOCX 页数:18 大小:22.03KB
下载 相关 举报
PHP笔试试题.docx_第1页
第1页 / 共18页
PHP笔试试题.docx_第2页
第2页 / 共18页
PHP笔试试题.docx_第3页
第3页 / 共18页
PHP笔试试题.docx_第4页
第4页 / 共18页
PHP笔试试题.docx_第5页
第5页 / 共18页
PHP笔试试题.docx_第6页
第6页 / 共18页
PHP笔试试题.docx_第7页
第7页 / 共18页
PHP笔试试题.docx_第8页
第8页 / 共18页
PHP笔试试题.docx_第9页
第9页 / 共18页
PHP笔试试题.docx_第10页
第10页 / 共18页
PHP笔试试题.docx_第11页
第11页 / 共18页
PHP笔试试题.docx_第12页
第12页 / 共18页
PHP笔试试题.docx_第13页
第13页 / 共18页
PHP笔试试题.docx_第14页
第14页 / 共18页
PHP笔试试题.docx_第15页
第15页 / 共18页
PHP笔试试题.docx_第16页
第16页 / 共18页
PHP笔试试题.docx_第17页
第17页 / 共18页
PHP笔试试题.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

PHP笔试试题.docx

《PHP笔试试题.docx》由会员分享,可在线阅读,更多相关《PHP笔试试题.docx(18页珍藏版)》请在冰点文库上搜索。

PHP笔试试题.docx

PHP笔试试题

一、单项选择(40分)

1、PHP是一种______脚本语言,基于______引擎。

PHP最常被用来开发动态的______内

容,此外,它同样还可被用来生成______(以及其他)文档。

A.动态,PHP,数据库,HTML

B.嵌入式,Zend,HTML,XML

C.基于Perl的,PHP,Web,静态

D.基于Zend的,PHP,图像,HTML

2、以下代码哪个不符合PHP语法?

A.$_10

B.${“MyVar”}

C.&$something

D.$10_somethingsE.$aVaR

3、以下哪种标签不是PHP起始/结束符?

A.<%%>

B.//

C.

php?

>

D./**/

4、要比较两个字符串,以下那种方法最万能?

A.用strpos函数

B.用==操作符

C.用strcasecmp()

D.用strcmp()

运行时(run-time)包含一个PHP脚本使用______,而编译时(compile-time)包含一

个PHP脚本使用______。

A.include_once,include

B.require,include

C.require_once,include

D.以上皆可

5、print()和echo()有什么区别?

A

A.print()能作为表达式的一部分,echo()不能

B.echo()能作为表达式的一部分,print()不能

C.echo()能在CLI(命令行)版本的PHP中使用,print()不能

D.print()能在CLI(命令行)版本的PHP中使用,echo()不能

6、如果用+操作符把一个字符串和一个整型数字相加,结果将怎样?

A.解释器输出一个类型错误

B.字符串将被转换成数字,再与整型数字相加

C.字符串将被丢弃,只保留整型数字

D.字符串和整型数字将连接成一个新字符串

7、运行以下代码将显示什么?

define(myvalue,"10");

$myarray[10]="Dog";

$myarray[]="Human";

$myarray['myvalue']="Cat";

$myarray["Dog"]="Cat";

(window.cproArray=window.cproArray||[]).push({id:

"u2280119"});

print"Thevalueis:

";

print$myarray[myvalue]."\n";

?

>

2

A.TheValueis:

Dog

B.TheValueis:

Cat

C.TheValueis:

Human

D.TheValueis:

10

8、以下脚本输出什么?

d

$a=10;$b=20;$c=4;$d=8;$e=1.0;

$f=$c+$d*2;$g=$f%20;

$h=$b-$a+$c+2;$i=$h<<$c;$j=$i*$e;

print$j;?

>

A.128

B.42

C.242.0

D.256

什么情况下声明函数时不能给参数赋默认值?

A.当参数是布尔值时

B.当函数是类中的成员时

C.当参数是通过引用传递时

D.当函数只有一个参数时

9、以下哪种方法能保证锁在任何竞争情况下都安全?

A.用flock()锁住指定文件

B.用fopen()在系统的临时文件夹里打开文件

C.用tempnam()创建一个临时文件

D.用mkdir()创建一个文件夹来当

10、stat()和fstat()有什么区别?

A.stat()基于文件指针工作,fstat()基于路径工作

B.fstat()基于文件指针工作,stat()基于路径工作

C.fstat()不能处理文件

D.stat()不能处理文件

11、考虑如下脚本。

运行时,尽管文件test.txt已经被用unlink()函数删除,脚本仍然输出1,1。

在脚本的最后添加什么函数才能解决这个问题?

$f=fopen("test.txt","w");

fwrite($f,"test");

fclose($f);

echo(int)file_exists("test.txt").',';

unlink("c:

\\test.txt");

echo(int)file_exists("test.txt");

?

>

A.clearstatcache()

B.fflush()

C.ob_flush()

D.touch()

12、如何给变量$a,$b和$c赋值才能使以下脚本显示字符串“Hello,World!

”?

$string="Hello,World!

";

$a=?

;

3

$b=?

;

$c=?

;

if($a){

if($b&&!

$c){

echo"GoodbyeCruelWorld!

";

}elseif(!

$b&&!

$c){

echo"Nothinghere";

}

}

else{

if(!

$b){

if(!

$a&&(!

$b&&$c)){

echo"Hello,World!

";

}else{

echo"GoodbyeWorld!

";

}

}else{

echo"Notquite.";

}

}

?

>

A.False,True,False

B.True,True,False

C.False,True,True

D.False,False,True

13、什么情况下声明函数时不能给参数赋默认值?

A.当参数是布尔值时

B.当函数是类中的成员时

C.当参数是通过引用传递时

D.当函数只有一个参数时

14、运行以下代码将显示什么值?

假设代码运行时的URL是:

testscript.php?

c=25

functionprocess($c,$d=25)

{

global$e;

$retval=$c+$d-$_GET['c']-$e;

return$retval;

}

$e=10;

echoprocess(5);

?

>

A.25

B.-5

C.10

D.5

15、一段脚本如何才算彻底终止?

A.当调用exit()时

B.当执行到文件结尾时

C.当PHP崩溃时

D.当Apache由于系统故障而终止时

16、以下脚本输出什么?

$array='0123456789ABCDEFG';$s='';

for($i=1;$i<50;$i++){

$s.=$array[rand(0,strlen($array)-1)];

}echo$s;

?

>

A.50个随机字符组成的字符串

B.49个相同字符组成的字符串,因为没有初始化随机数生成器

C.49个随机字符组成的字符串

D.什么都没有,因为$array不是数组

17、要修改每个元素的值,如何遍历$myarray数组最合适?

$myarray=array("MyString","AnotherString","Hi,Mom!

");?

>

A.用for循环

B.用foreach循环

C.用while循环

D.用do„while循环

18、考虑如下代码片段:

define("STOP_AT",1024);$result=array();

/*在此处填入代码*/

{

5

$result[]=$idx;

}

print_r($result);

?

>

标记处填入什么代码才能产生如下数组输出?

Array{[0]=>1

[1]=>2

[2]=>4

[3]=>8

[4]=>16

[5]=>32

[6]=>64

[7]=>128

[8]=>256

[9]=>512}

A.foreach($resultas$key=>$val)

B.while($idx*=2)

C.for($idx=1;$idx

D.for($idx*=2;STOP_AT>=$idx;$idx=0)

18、函数delete是做什么的?

A.删除文件

B.删除文件夹

C.释放变量

D.没有这个函数!

19、以下哪个选项准确的描述出了方框中的脚本的作用?

echonumber_format(disk_free_space('c:

\\')/

disk_total_space('c:

\\')*100,2).'%';

?

>

A.计算Windows系统C盘的剩余磁盘空间大小

B.输出一个表示C盘剩余空间所占比例的两位小数

C.输出C盘剩余容量的byte数

D.计算C盘总容量与剩余空间的比率

20、stat()和fstat()有什么区别?

A.stat()基于文件指针工作,fstat()基于路径工作

B.fstat()基于文件指针工作,stat()基于路径工作

C.fstat()不能处理文件

D.stat()不能处理文件

21、要修改每个元素的值,如何遍历$myarray数组最合适?

$myarray=array("MyString","AnotherString","Hi,Mom!

");

?

>

A.用for循环

B.用foreach循环

C.用while循环

D.用do…while循环

22、.以下代码哪个不符合PHP语法?

A.$_10

B.${“MyVar”}

C.&$something

D.$10_somethings

23、PHP的位运算符不包括()。

A.&B.|C.~D.!

24、要配置Apache的PHP环境,只需修改()。

A.php.ini

B.http.conf

C.php.sys

D.php.exe

25、PHP中定义常量的方法是()。

A.VAR

B.dim

C.define()

D.undefined()

26、运行以下代码将显示什么?

php

define(myvalue,"10");

$myarray[10]="Dog";

$myarray[]="Human";

$myarray['myvalue']="Cat";

$myarray["Dog"]="Cat";

print"Thevalueis:

";

print$myarray[myvalue]."\n";

?

>

A.TheValueis:

Dog

B.TheValueis:

Cat

C.TheValueis:

Human

D.TheValueis:

10

27、以下脚本输出什么?

php

$array='0123456789ABCDEFG';

$s='';

for($i=1;$i<50;$i++){

$s.=$array[rand(0,strlen($array)-1)];

}

echo$s;

?

>

A.50个随机字符组成的字符串

B.49个相同字符组成的字符串,因为没有初始化随机数生成器

C.49个随机字符组成的字符串

D.49个字母‘G’组成的字符串

28、考虑如下代码片段:

php

define("STOP_AT",1024);

$result=array();

/*在此处填入代码*/

{

$result[]=$idx;

}

print_r($result);

?

>

标记处填入什么代码才能产生如下数组输出?

Array

{

[0]=>1

[1]=>2

[2]=>4

[3]=>8

[4]=>16

[5]=>32

[6]=>64

[7]=>128

[8]=>256

[9]=>512

}

A.foreach($resultas$key=>$val)

B.while($idx*=2)

C.for($idx=1;$idx

D.for($idx*=2;STOP_AT>=$idx;$idx=0)

29、考虑如下一段代码,执行时,$eight_tenths->to_string方法返回的字符串是8/10而不

是希望的4/5,为什么?

php

classfraction{

var$numerator;`2322222221`q``

var$denominator;

functionfraction($n,$d){

$this->set_numerator($n);

$this->set_denominator($d);

}

functionset_numerator($num){

$this->numerator=(int)$num;

}

functionset_denominator($num){

$this->denominator=(int)$num;

}

functionto_string(){

return"{$this->numerator}/{$this->denominator}";

}

}

functiongcd($a,$b){

return($b>0)?

gcd($b,$a%$b):

$a;

}

functionreduce_fraction($fraction){

$gcd=gcd($fraction->numerator,

$fraction->denominator);

$fraction->numerator/=$gcd;

$fraction->denominator/=$gcd;

}

$eight_tenths=newfraction(8,10);

/*Reducethefraction*/

reduce_fraction($eight_tenths);

var_dump($eight_tenths->to_string());

?

>

A.reduce_fraction函数必须返回一个值

B.reduce_fraction函数必须接受一个整型值

C.gcd函数有问题

D.必须通过引用的方式传递$eight_tenths对象

30、在str_replace(1,2,3)函数中123所代表的名称是()。

A."取代字符串","被取代字符串","来源字符串"

B."被取代字符串","取代字符串","来源字符串"

C."来源字符串","取代字符串","被取代字符串"

D."来源字符串","被取代字符串","取代字符串"

31、下面程序运行的结果为()。

$a=array("a","b","c","d");

$index=array_search("a",$a);

if($index==false)

echo"在数组a中未发现字符'a'";

elseecho"index=".$index;

A.在数组a中未发现字符’a’

B.0

C.1

D.2

31、以下代码能正确在浏览器中显示图片的是:

()

A.

php

$img=imagecreatefromjpeg(“images/scce.jpg”)

imagejpeg($img);

imagedestroy($img);

?

>

B.

php

header(“content-type:

image/jpeg”);

$img=imagecreatefromjpeg(“images/scce.jpg”)

imagejpeg($img);

imagedestroy($img);

?

>

C.

php

header(“content-type:

image/jpeg”);

$img=imagecreatefromfile(“images/scce.jpg”)

imageout($img);

imagedestroy($img);

?

>

D.

php

header(“content-type:

image/jpeg”);

$img=imageopen(“images/scce.jpg”)

imagejpeg($img);

imagedestroy($img);

?

>

32、哪种方法用来计算数组所有元素的总和最简便?

A.用for循环遍历数组

B.用foreach循环遍历数组

C.用array_intersect函数

D.用array_sum函数

33、在不考虑实际用途的前提下,把数组直接传给一个只读函数比通过引用传递的复杂度

低?

A.是的,因为在把它传递给函数时,解释器需要复制这个数组

B.是的,如果函数修改数组的内容的话

C.是的,如果这个数组很大的话

D.是的,因为PHP需要监视函数的输出,已确定数组是否被改变

34、给定一个用逗号分隔一组值的字符串,以下哪个函数能在仅调用一次的情况下就把每

个独立的值放入一个新创建的数组?

A.strstr()

B.不可能只调用一次就完成

C.extract()

D.explode()

35、如果用+操作符把一个字符串和一个整型数字相加,结果将怎样?

A.解释器输出一个类型错误

B.字符串将被转换成数字,再与整型数字相加

C.字符串将被丢弃,只保留整型数字

D.字符串和整型数字将连接成一个新字符串

36、以下哪种方法能保证锁在任何竞争情况下都安全?

A.用flock()锁住指定文件

B.用fopen()在系统的临时文件夹里打开文件

C.用tempnam()创建一个临时文件

D.用mkdir()创建一个文件夹来当

37、GMT时区下的时间戳与你所在时区下的时间戳的秒数差距有多大?

A.取决于你所在时区与GMT时区的时间差

B.没有差别

C.只当你也在GMT时区时才会相同

D.永远不会相同

38、如何将一个数组作为附件发送,并要能在接收后重新组合?

A.用serialize()把它转换成字符串,再用htmlentities()处理一下

B.把它存在文件中,并用base64_encode()进行编码

C.用serialize()把它转换成数组

D.用serialize()把它转换成数组,再用base64_encode()进行编码

39、返回上一个MYSQL操作中的错误信息的数字编码使用的函数是()。

A.mysql_error();

B.Mysql_close();

C.Mysql_errno();

D.Mysql_connect();

40、在PHP函数中,属于选择数据库函数的是()。

A.mysql_fetch_row

B.mysql_fetch_object

C.mysql_result

D.mysql_select_db

多选

1、以下哪个选项是把整型变量$a的值乘以4?

A.$a*=pow(2,2);

B.$a>>=2;

C.$a<<=2;

D.$a+=$a+$a;

E.一个都不对

2、以下脚本将如何影响$s字符串?

php

$s='

Hello

';

$ss=htmlentities($s);

echo$s;

?

>

A.尖括号<>会被转换成HTML标记,因此字符串将变长

B.没有变化

C.在浏览器上打印该字符串时,尖括号是可见的

D.在浏览器上打印该字符串时,尖括号及其内容将被识别为HTML标签,因此不可

E.由于调用了htmlentities(),字符串会被销毁

3、基于指定的式样(pattern)把一个字符串分隔开并放入数组,以下哪些函数能做到?

A.preg_split()

B.ereg()

C.str_split()

D.explode()

E.chop()

4、以下哪些函数能读取文件的全部内容?

A.fgets()

B.file_get_contents()

C.fread()

D.readfile()

E.file()

5、处理数据库中读取的日期数据时,以下那种方法有助于避免bug?

A.确保日期数据与服务器使用相同的时区

B.如果日期需要被转换成UNIX时间戳进行操作,要确保结果不会溢出

C.用数据库功能测试日期的合法性

D.如果可能,用数据库功能计算日期的值

E.用代码控制日期只能在PHP中进行处理

6、考虑如下SQL语句。

哪个选项能对返回记录的条数进行限制?

SELECT*FROMMY_TABLE

A.如果可能,用把查询转换成存储例程

B.如果程序允许,给查询指定返回记录的范围

C.如果可能,添加where条件

D.如果DBMS允许,把查询转换成视图

E.如果DBMS允许,使用事先准备好的语句

7、考虑如下脚本。

假设mysql_query函数将一个未过滤的查询语句送入一个已经打开的

数据库连接,以下哪个选项是对的?

php

$r=mysql_query('DELETEFROMMYTABLEWHEREID='.$_GET['ID']);

?

>

72

A.MYTABLE表中的记录超过1条

B.用户输入的数据需要经过适当的转义和过滤

C.调用该函数将产生一个包含了其他记录条数的记录

D.给URL传递ID=0+OR+1将导致MYTABLE中的所有表被删除

E.查询语句中应该包含数据库名

8、有一个脚本由于要从远程获取数据,因而运行速度很慢,以下那种方法能对其进行优

化?

A.安装操作码缓存(opcodecache)

B.优化或者升级你的网络连接

C.添置更多的硬件

D.增加服务器的可用RAM

E.使用连接缓存

9、改变输出MYSQL中文乱码的SQL语句是()。

A.SETNAMESGB2312

B.SETNAMESUTF8

C.SETNAMESUTF-8

D.SETNAMES"GB2312"

10、你在向某台特定的电脑中写入带有效期的cookie时总是会失败,而这在其他电脑上都

正常。

在检查了客户端操作系统传回的时间后,你发现这台电脑上的时间和web服务

器上的时间基本相同。

而且这台电脑在访问大部分其他网站时都没有问题。

请问这会

是什么原因导致的?

(双选)

A.浏览器的程序出问题了

B.客户端的时区设置不正确

C.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2