您现在的位置是:首页 > 学无止境 > 其他网站首页其他 PHP作业1(PHP语法)报告 复习题

PHP作业1(PHP语法)报告 复习题

  • 莫愁
  • 其他
  • 2019-01-04
简介百一测评 PHP作业1(PHP语法)报告
字数 4521

单选(共20道题)

1.服务器变量$_SERVER是预定义变量之一,作用范围全局有效,是Web服务器创建的数组。下面哪个变量存储了访问页面时的请求方法(如get、post)?( )

A、 $_SERVER["HTTP_ACCEPT_LANGUAGE"]

B、 $_SERVER["HTTP_HOST"]

C、 $_SERVER["REMOTE_ADDR"]

D、 $_SERVER["REQUEST_METHOD"]

正确答案:D

题目解析:

服务器变量名

变量的存储内容

 

$_SERVER["HTTP_ACCEPT"]

当前Accept请求的头信息

$_SERVER["HTTP_ACCEPT_LANGUAGE"]

当前请求的Accept-Language头信息,如zh-cn

 

$_SERVER["HTTP_USER_AGENT"]

当前用户使用的浏览器信息

 

$_SERVER["HTTP_HOST"]

当前请求的Host头信息的内容,如localhost

$_SERVER["HTTP_CONNECTION"]

当前请求的Connection头信息,如Keep-Alive

 

$_SERVER["SERVER_NAME"]

当前运行脚本所在服务器主机的名称,如localhost

$_SERVER["SERVER_ADDR"]

服务器所在的IP地址,如127.0.0.1

$_SERVER["SERVER_PORT"]

服务器所使用的端口,如80

 

$_SERVER["REMOTE_ADDR"]

正在浏览当前页面用户的IP地址

 

$_SERVER["DOCUMENT_ROOT"]

当前运行脚本所在的文档根目录,即htdocs目录

$_SERVER["REMOTE_PORT"]

用户连接到服务器时所使用的端口

$_SERVER["GATEWAY_INTERFACE"]

服务器使用的CGI规范版本

$_SERVER["SERVER_PROTOCOL"]

请求页面时通信协议的名称和版本

$_SERVER["REQUEST_METHOD"]

访问页面时的请求方法,如get、post

 

$_SERVER["QUERY_STRING"]

查询的字符串(URL中第一个问号之后的内容)

$_SERVER["REQUEST_URI"]

访问此页面所需的URI

$_SERVER["SCRIPT_NAME"]

包含当前脚本的路径

 

2.下面代码运行后的输出结果是( )

<?php

$a=1;

$b=2;

function Sum()bsp;     //创建Sum()函数

{

global $a;

$GLOBALS['b']=$a+$GLOBALS['b'];

}

Sum();

echo $b;

?>

A、 1

B、 2

C、 3

D、 其他都不对

正确答案:C

题目解析:

global $a;  //函数内部使用全局变量必须使用global关键字,否则视为局部变量;

$GLOBALS['b']=$a+$GLOBALS['b'];    //运算全局变量$b的值: $GLOBALS变量以数组形式记录所有已经定义的全局变量。

//通过“$GOLBAL["变量名"]”的方法来引用全局变量。由于 $GLOBALS 超全局变量可以在程序的任意地方使用,所以它比使用“global”引用全局变量更方便。

 

3.下面哪个预定义变量存储由HTTP post方法传递的已上传文件项目组成的数组?( )

A、 $_COOKIE

B、 $_POST

C、 $_FILES

D、 $_SESSION

正确答案:C

题目解析:

$_COOKIE。它是由 HTTP Cookies传递的变量组成的数组。

$_GET。它是由HTTP get方法传递的变量组成的数组。

$_POST。它是由HTTP post方法传递的变量组成的数组。

$_FILES。它是由HTTP post方法传递的已上传文件项目组成的数组。

$_REQUEST。它是所有用户输入的变量数组,包括$_GET、$_POST、$_COOKIE所包含的输入内容。

$_SESSION。它是包含当前脚本中会话变量的数组。

 

4.下面哪条语句不是定义常量?( )

A、 define("_KO","156");

B、 const CONSTANT='Hello World!';

C、 const a  = 5;

D、 const $b = 2;

正确答案:D

题目解析:

最后一条报错的。P72页:

自定义常量使用define()函数来定义,语法格式如下:

define("常量名","常量值"); 在PHP 5.3.0以后,可以使用const关键字在类定义之外定义常量:

const 常量名=常量值;

常量一旦定义,就不能再改变或取消定义,而且值只能是标量,数据类型只能是boolean、integer、float或string。和变量不同,常量定义时不需要加“$”。

 

5.预定义常量也称魔术常量。预定义常量使用方法和常量相同,但是它的值会根据情况的不同而不同。下面哪个不是预定义常量?( )

A、 __LINE__

B、 __FILE__

C、 __DIR__

D、 CONST

正确答案:D

题目解析:

经常使用的预定义常量有8个,这些特殊的常量是不区分大小写的:

名    称

说    明

__LINE__

常量所在的文件中的当前行号

__FILE__

常量所在的文件的完整路径和文件名

__DIR__

文件所在的目录(PHP 5.3.0中新增) __FUNCTION__

常量所在的函数名称,自PHP 5起本常量返回该函数被定义时的名称(区分大小写)

__CLASS__

常量所在的类的名称,自PHP 5起本常量返回该类被定义时的名称(区分大小写)。自PHP 5.4起对trait也起作用。当用在 trait方法中时,__CLASS__是调用trait方法的类的名称 __TRAIT__

Trait的名称(PHP 5.4.0 新增),自PHP 5.4起此常量返回trait 被定义时的名称(区分大小写)

__METHOD__

常量所在的类的方法名

__NAMESPACE__

当前命名空间的名称(区分大小写)。此常量是在编译时定义的(PHP 5.3.0新增)

 

6.下面代码执行后输出的值是什么? ( )

<?php

$a=3;

$b=&$a;

$b=4;

$a+=5;

echo "$a";

?>

A、 3

B、 5

C、 8

D、 9

正确答案:D

题目解析:

$b=&$a;     // $b 是 $a 的引用,引用赋值意味着两个变量指向了同一个数据,任何一个的修改都导致另外一个相应的修改

 

7.语句“echo $b2=($a2=102)>100? 'YES': 'NO';”输出的是什么?( )

A、 102

B、 100

C、 YES

D、 NO

正确答案:C

题目解析:

? 是否的意思

三元运算符有 = += -= *= /= .= %= &= |= ^= <<= >>=

 

8.语句“ $b2=101>100? : 'NO';”执行后$b2的类型和值分别是什么?( )

A、 boolean,true

B、 boolean,false

C、 string, NO

D、 string, YES

正确答案:A

题目解析:

PHP还提供了一种三元运算符<?:>。它与C语言中的用法相同,语法格式如下:

condition? (value1) : (value2)

condition是需要判断的条件,当条件为真时返回冒号前面的值,否则返回冒号后面的值。例如:

<?php

$a=10;

$b=$a>100? 'YES': 'NO';

echo $b;                //输出'NO'

?> 自PHP 5.3起,可以省略三元运算符中间的部分,例如:

condition? : (value2)

在condition求值为真时返回TRUE,否则返回value2。

 

9.下面代码段执行后的输出结果是( )

<?php

for($n=0, $m=5;$n<10;$n++)

{

if($n==$m)

continue;

echo $n;    

}

?>

A、 01234

B、 012346789

C、 0123456789

D、 5

正确答案:B

题目解析:

for($n=0, $m=5;$n<10;$n++)

{

if($n==$m)

continue;       //跳出本次循环,$n=5时没有echo输出,=6时还有的...

echo $n;         //输出的结果是 012346789

}

 

10.下面代码段执行后的输出结果是( )

<?php

$m=5;

for($n=0;$n<10;$n++)

{

if($n==$m)

break;

echo $n;

}

?>

A、 01234

B、 012346789

C、 0123456789

D、 5

正确答案:A

题目解析:

$m=5;

for($n=0;$n<10;$n++)

{

if($n==$m)

break;         //跳出循环,即结束循环

echo $n;           //输出的结果是 01234

}

 

11.下面代码执行后输出的是( ):

<?php

for($i=0,$j=50; $i<100; $i++)

{

while($j--)

{

if($j==17) goto end;

}

}

echo "i=$i";

end:

echo "j=$j";

?>

A、 i=0j=18

B、 i=0j=17

C、 j=18

D、 j=17

正确答案:D

题目解析:

使用goto控制符来跳出循环

 

12.下面代码运行的的输出是( )

<?php

$str="加油";

echo '中国$str!';

?>

A、 中国$str!

B、 中国加油!

C、 中国!

D、 中国str!

正确答案:A

题目解析:

使用双引号和单引号的主要区别是,单引号定义的字符串中出现的变量和转义序列不会被变量的值替代,而双引号中使用的变量名在显示时会显示变量的值。例如:

<?php

$str="加油";

echo '中国$str!';      //输出:中国$str!

echo "中国$str!";       //输出:中国加油!

?>

 

13.执行语句“echo 0b1001;”输出的是( )。

A、 0b1001

B、 1001

C、 9

D、 5

正确答案:C

题目解析:

整型变量的值是整数,表示范围是-2 147 483 648~2 147 483 647。整型值可以用十进制数、八进制数、十六进制数或二进制数(PHP 5.4.0)的标志符号指定,前面再加上可选符号(-或+)。八进制数符号指定,数字前必须加0;十六进制数符号指定,数字前必须加0x;二进制数符号指定数字前必须加0b。例如:

$n1=656;        //十进制数

$n2=0;        //零

$n3=-42;         //负数

$n4=0123;        //八进制数(等于十进制数的83)

$n5=0x1B;        //十六进制数(等于十进制数的27)

$n6=0b100101;      //二进制数(等于十进制数的37)

所以   0b1001 = 9

 

14.默认情况下,Apache服务器的配置文件名以及PHP预处理器的配置文件名分别是_______________和_______________。

A、 my.conf、php.ini

B、 httpd.conf、my.ini

C、 http.conf、php.ini

D、 httpd.conf、php.ini

正确答案:D

 

15.下面代码运行输出的结果是______________。

<?php

$a = 1;

$b = 5;

$c = 9;

$d = $a>$b?$a:$b;

$e = $d<$c?$d:$c;

echo $e;

?>

A、 1

B、 5

C、 9

D、 0

正确答案:B

 

16.下面代码运行后的输出是_______________。

<?php

function getOneValue($a,$b,$c){

$min=$a<$b?$a:$b;

$min=$min<$c?$min:$c;

return $min;

}

echo getOneValue(6,3,9);

?>

A、 3

B、 6

C、 9

D、 0

正确答案:A

题目解析:

简短的代码编写一个获取3个数字中最小值的函数

 

17.取余数运算符的符号是(     )。

A、 &

B、 ¥

C、 %

D、 #

正确答案:C

 

18.下面关于PHP自定义函数的描述正确的是(         )。

A、 在同一文件中可以定义两个同名的函数      

B、 函数名称是区分大小写的

C、 函数的命名规则与变量命名规则相同

D、 定义函数时必须要指定函数返回值类型

正确答案:C

19.下面代码的执行结果是(          )。

<?php

$a = "12str"+8;

echo $a;

?>

A、 20

B、 12str8

C、 8

D、 20str

正确答案:A

题目解析:

“12str”类型自动转换为12,再+8

 

20.下面代码运行后,其输出结果应该为(         )

<?php

$a="PHP";

function show(){

$a="MySQL";

global $a;

echo $a;

}

echo $a;

show();

?>

A、 MySQLPHP

B、 MySQLMySQL

C、 PHPPHP

D、 PHPMySQL

正确答案:C

题目解析:

1、函数中定义的全局变量只有在函数被调用后才会生效;

2、自定义函数内部:不会把已有的、在函数内部定义的变量再改变为全局变量。

 

填空题(共11道题)

1.将两个或多个数组的单元合并起来的函数是______________________________。(请全部小写;只列出函数名即可)

参考答案:array_merge()

 

2.下面代码的输出结果是______________。

<?php

function example($num){

return "$num*$num=".$num * $num;

}

echo example(3);

?>

参考答案:3*3=9

 

3.下面向数组$array中添加一个元素,请将下面的代码补充完整。

<?php

$array=array("长春","吉林","黑龙江");

______________($array,'上海');

?>

参考答案:array_push

题目解析:

数组的“栈”操作

 

4.下面代码的输出结果是______________。

<?php

function example( &$m ){

$m = $m * 5 + 10;

echo $m;

}

$m = 1;

example( $m );

echo $m;

?>

参考答案:1515

 

5.下面代码运行的结果是(     )。

<?php

$text="  \tllo  ";

echo strlen(trim($text));

?>

参考答案:3

题目解析:

即输出字符的长度

 

6.下面代码的运行结果为(        )。

<?php

$sum=0;

for($i=10;$i>=1;$i--){

if($i%2!=0){

break;

}

$sum=$sum + $i;

}

echo $sum;

?>

而下面代码的运行结果为(        )。

<?php

$sum=0;

for($i=10;$i>=1;$i--){

if($i%2!=0){

continue;

}

$sum=$sum + $i;

}

echo $sum;

?>

参考答案:10、30

 

7.在对中文字符串进行截取时可以防止出现乱码的函数是______________;使用函数_______可以实现字符串的翻转功能。

参考答案:mb_substr、strrev

 

8. 下面PHP代码运行后的结果是______________。

$str="phper";

$replace="mysql";

echo substr_replace($str,$replace,1,2);

参考答案:pmysqler

题目解析:

substr_replace(string,replacement,start,length)

str_replace(find,replace,string,count)

 

9.下面代码是使用检测数据类型的函数对定义的数据类型进行检测,请将下列代码补充完整。

<?php

$a=true;

$b="你好PHP";

echo "变量是否为布尔型:".______________($a)."<br>";

echo "变量是否为字符串型:".______________($b) ";

?>

参考答案:is_bool、is_string

 

10.下面代码的作用是使用for循环来计算1到100之间所有奇数的和,请根据要求补全代码。

<?php

$sum=0;

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

if($i%2==0) _____________;

______________;

}

echo  $sum;

?>

参考答案:continue、$sum=$sum+$i

 

11.下面代码将字符串“我喜欢学习PHP”从UTF-8编码转换成GB2312编码,请将代码补充完整(即填写函数名)。

<?php

echo "汉字编码测试(UTF-8 -> GB2312):浏览器中运行一次后,再在浏览器中右击=》编码,选UTF8、gb2312(或者gbk)不同类型测试。<br/>";

$str="我喜欢学习PHP";

echo "str=[$str]<br/>";

$str=______________________($str,"GB2312","UTF-8");//UTF-8编码转换成GB2312编码

echo "str=[$str]<br/>";

?>

参考答案:mb_convert_encoding


转载: 感谢您对莫愁个人博客网站平台的认可,非常欢迎各位朋友分享到个人站长或者朋友圈,但转载请说明文章出处“来源莫愁个人博客 https://www.mochoublog.com/study/60.html”。

文章评论

    • 评论
    人参与,条评论

技术在线

服务时间

周一至周日 12:00-22:00

关闭下雪
关闭背景特效