千文网小编为你整理了多篇相关的《开发技术(PHP)测试题(大全)》,但愿对你工作学习有帮助,当然你在千文网还可以找到更多《开发技术(PHP)测试题(大全)》。
最新PHP技术笔试练习题
茂盛的禾苗需要水分;成长的少年需要学习。以下是小编为大家搜索整理的最新PHP技术笔试练习题,希望能给大家带来帮助!更多精彩内容请及时关注我们应届毕业生考试网!
一、不定项选择
1:Php文件的后缀名是( A )
A:php B:jsp C:asp D xml
2:php环境的网页运行服务器是( B )
A: IIS B: apache C: tomcat D Weblogic
3: PHP常用的开发工具有( ABCD ) x
A: Zend Stodio B: EditPlus C: DW D: 记事本
5: 书写php代码能使用的正确形式是(AB )
A: B:
C: <# #> D:
6: php中能使用的注释方式是( ABC )
A: //???? B: /*???? */ C: #.............. D:
7: php常用的打印函数为( ABC )
A: print B: echo C: printf D: 以上都不是
8: 以下那一个不是PHP数据类型的为( B)
A: integer B: friend C: boolean D: array
10: 以下转义字符中为制表符的是( B )
A:n B: t C: r D: $
11:以下函数中用于判断是否为数组的函数为( C )
A: is_long() B: is_double() C: is_array() D: is_object()
12: 按作用域分的话,php的变量可分为(ABC )
A: 局部变量 B: 全局变量 C: 静态变量 D: 枚举
13: $a=1;$b=2;
function Sum()
{
Global $a,$b;
$b=$a+$b;
}
Sum();
echo $b;$b的结果为( C )
A: 2 B: 1 C: 3 D: 0
14:若$a=10;则$a++为(C ), ++$a为( )
A:10,10 B: 11,10 C:10,11 D: 11,11
15: $a=(3>5) ? (‘yes’) : (‘no’);echo $a.”
n”( B )
A:yes B: no C:0 D: 1
16: Function keep_track(){
STATIC $count=5;
echo $count++,”
”
}
Keep_track();
Keep_track();
Keep_track();该程序的结果为(B )
A5,5,5 B: 5,6,7 C:6,7,5 D: 6,5,7
17以下属于文件包含的函数为( ABCD)
A include() B: require()
C:include_once() D: require_once()
18:print strlen(“p h p”) 结果为( C )
A 3 B:5 C:6 D: 4
19: $a = 3;
function foo()
{
$a=0;
$a+=2;
}
foo();
echo $a;
$a的结果为( A )
A 3 B:2 C:0 D: 5
20: function doubler($value)
{
$value = $value * 2;
}
$a = 3;
doubler($a);
echo $a;$a为(D )
A 5 B:0 C:6 D: 3
21: function doubler(&$value)
{
$value = $value * 2;
}
$a = 3;
doubler($a);
echo $a;$a为(C )
A 5 B:0 C:6 D: 3
22: 以下用于追加数组元素的函数为(A D )
A array_push() B: array_pop() C: array_shift()
array_unshift()
23: 以下用于删除数组元素的函数为( )
A array_push() B: array_pop() C: array_shift()
array_unshift() D: D:
23: 以下用于修改数组元素的函数为( A )
A array_pad() B: array_pop() C: array_shift() D: array_unshift()
24:判断数组键存在的函数为( B )
A in_array() B: array_key_exists() C: array_keys() D:
array_values()
24:判断数组值存在的函数为( A)
A in_array() B: array_key_exists() C: array_keys() D:
array_values()
25: 要想返回一个数组中单元的键名,可以使用( C )函数
A in_array() B: array_key_exists() C: array_keys() D:
array_values()
26: 用于删除数组中所有重复的值,返回一个由唯一值组成的数组的函数为( B)
A in_array() B: Array_unique() C: array_keys() D: array_values() 27:php用那几种形式实现多态( )
A接口 B: 继承 C: 抽象 D: 封装
29: 字符串的定义方式有( ABC )
A单引号 B: 双引号 C: 定界符 D: 美元符号
30: 以下能够识别转义字符的为( B )
A单引号 B: 双引号 C: 定界符 D: 美元符号
31: $name='Tim O'Reilly'; echo $name."
“;
输出结果为( B )
A Tim O'Reilly B: Tim O' Reilly
C:Tim OReilly D: TimOReilly
32: $path='C:WINDOWS';echo $path."
";
输出结果为( B )
A C:WINDOWS B: C:WINDOWS
C: C:WINDOWS D: C:/WINDOWS
33: 函数(A )返回一个字符串里的字符数
A strlen() B: strcmp ( ) C: strtolower( ) D: ucfirst( )
34: 使用( B )函数比较字符串
A strlen() B: strcmp ( ) C: strtolower( ) D: ucfirst( )
35:以下函数那些事用于过滤字符串空格的( ABC )
A ltrim( ) B: rtrim( ) C: trim( ) D: wtrim()
36: 将字符串中的换行符(n)转换为
的函数为( A)
A nl2br() B: strip_tags() C: substr( ) D: implode()
37: $email = 'user@example.com';$domain = strstr($email, '@');echo $domain; 输出结果为( A )
A @example.com B: user@example.com C: example.com D: user
38: $mystring = 'abc';
$findme = 'a';
$pos = strpos($mystring, $findme);
if ($pos === false)
echo "not found ";
else
echo "found";
输出结果为( B )
A not found B: found C: found not found D:not
39: $str = "My name is Jack, and what is your name?";
echo substr_count ($str,“name”);程序的输出结果为( B )
A 1 B: 2 C: 3 D:4
40: 复制文件使用( A )函数实现
A copy() B: unlink() C: rename() D: fwrite()
41:使用( C )函数,可以移动、重新命名一个已经存在的文件或目录
A copy() B: unlink() C: rename() D: fwrite()
42: ( C )函数将任何英文文本的日期时间描述解析为 Unix 时间戳
A date() B: getdate() C: strtotime() D: mktime()
43: PHP程序中,需要处理的上传数据保存在全局数组( A )
A $_FILES B: $_COOKIE C: $GLOBALS D: $_SESSION
44: 使用函数( A )来检查此文件是否是上传文件。
A is_uploaded_file( ) B: move_uploaded_file()
C: uploaded_file() D: move_file()
45:
二、填空
1:PHP中的对象分为系统内置对象和自定义对象两种
2:类型转换:类型强制转换、类型自动转换
3:所有的变量都有作用域,它体现了变量的可见性与生命周期。
4:PHP中的变量都以$开头
5:变量的使用范围,也叫做变量的作用域
6:php中声明全局变量的关键字是GLOBAL
7:有两种不同的为函数传递参数的方法。第一种也是最普遍的一种就是按值(value)传递,另一种是按引用(reference)传递。
8: 数组的每个实体都包含两项:键和值。PHP数组分为索引数组和关联数组两类 9: 数组键既可用字符也可用数字
10:如果想创建一个范围型的数组外加步长 我们可以使用函数 range
11:客观世界由对象组成。
12:具有相同数据(属性)和操作(方法)的对象可归纳成类。
13对象是一个封装数据属性和操作行为的实体.
14:php系统构造函数为__Contruct(),系统析构函数为__destruct()
15:用于定义静态变量的关键字是static
16:用于在类中定义常量的关键字是 const
17:使用instanceof关键字可以判断某个对象是否是某个类的实例。
18:在PHP中我们使用”clone”这个关键字克隆对象
19:PHP5定义了一个特殊的方法名“__clone()”方法,是在对象克隆时自动调用的方法 20:继承性是面向对象程序设计语言不同于其他语言的最主要的特点.
21在类里面定义的`没有方法体的方法就是抽象方法
22:在声明抽象方法时还要加一个关键字“abstract”来修饰;
23: PHP 5引入了接口,是多重继承问题的解决方法!
24:PHP规定用interface来定义一个接口,然后用implements让类执行一个接口! 25:我们可以使用”extends”关键字让一个接口去继承另一个接口;
26:凡是被final标记了的属性和方法均无法重载。如果把final放在class前面,那么整个类将无法被继承!
27 :Php中比较常用的反射类是 ReflectionClass
28:使用pathinfo()函数,可以对指定的路径和文件名进行解析
29: PHP提供了basename()函数,可以快速的获取指定文件的文件名部分
30:使用dirname()函数,可以快速的获取指定文件的路径部分。
31:glob()函数可以根据指定的条件,来寻找与条件相符的文件或目录,并通过数组返回。 32: php使用opendir()打开一个目录句柄,以便其他目录函数使用
33: rmdir()函数会试图删除要求的目录,但是目录必须为空并具有相应的权限 34:使用readdir()函数,会从目录句柄中读取下一个文件的文件名
35:在使用完opendir()打开的目录句柄后,应使用closedir()进行关闭
36: file()函数读取文件后,返回1个数组,其中数组的每个单元对应着文件的1行
37:使用file_get_contents()函数,可以把参数指定的文件,整个读取到1个字符串变量中。
38: 而使用POST方法时,HTTP会将表单的输入信息进行包装后发送,而GET方式是附加在Action所设定的URL之后发送。
39:
三、代码填空
1
$array = array(0 => 0, "color" => "red",55,"two"=>array(1=>3,5,6,7)); function showValue($arr)
{
$flag=reset($arr);
while(!is_bool($flag))
{
$key=key($arr);
$value=current($arr);
if(is_array($value))
{
showValue($value);
}
else
{
echo $key.":".$value,"
";
}
$flag=next($arr);
}
}
showValue($array);
2
Class Test
{
public $name="lucky";
var $age=18;
function __set($propname,$propvalue)
{
$this->$propname=$propvalue;
print "ok";
}
}
$model=new Test();
$model->age=25;
$model->title="English";
print "age: ".$model->age."";
print "title: ".$model->title."";
3:
Class Test
{
public $name="lucky";
Var $age=25;
Public $address=“北京”;
Function __get($propname)
{
$vars=array("name","age","address");
if(in_array($propname,vars))
{
return $this->$propname;
}
else
{
return "No such variable!";
}
}
}
$model=new Test();
echo $model->city;
4
class A
{
public $attribute = 'value';
public function operation()
{
echo "operation called ".$this->attribute;
}
}
class B extends A
{
public $attribute = ‘new value’;
public function operation()
{
echo "new operation called ".$this->attribute;
}
}
$_a = new A();
$_a->operation();
$_b = new B();
$_b->operation();
5
if ($_FILES['userfile']['error'] > 0)
{
echo '上传错误: ';
switch ($_FILES['userfile']['error'])
{
case 1:
echo '上传文件大小超出了PHP配置文件中的约定值:upload_max_filesize'; break;
case 2:
echo '上传文件大小超出了表单中的约定值: max_file_size';
break;
case 3:
echo '文件只被部分上载';
break;
case 4:
echo '没有上传任何文件';
break;
}
exit;
}
if ($_FILES['userfile']['type'] != 'text/plain')
{
echo '问题: 文件不是一个文本文件。';
exit;
}
$upfile = './uploads/'.$_FILES['userfile']['name'];
if (is_uploaded_file($_FILES['userfile']['tmp_name']))
{
//判断是否为上传文件
if (!move_uploaded_file($_FILES['userfile']['tmp_name'], $upfile))
{
//移动文件
echo '问题: 不能将文件移动到指定目录。';
exit;
}
}
else
{
echo '问题: 上传文件不是一个合法文件: ';
echo $_FILES['userfile']['name'];
exit;
}
echo '文件上传成功!';
6
$dir = dir(“html”);//创建directory类对象
echo "当前句柄:".$dir->handle."";
echo "路径:".$dir->path."";
while(false !== ($entry = $dir->read()))
{
echo $entry."";
}
$dir->close();
四、论述题
1:请用代码掩饰循环读取文件内容
$handle = fopen("welcome.txt","rb");
$contents="";
while(!feof($handle))
{
$contents=fread($handle,1024);
}
fclose($handle);
print $contents ;
2: 试用函数演示递归求和
function showSum($n)
{
if($n==1)
return 1;
else
return showSum($n-1)+$n;
}
print showSum(10);
3: 试演示嵌套函数
function showValue()
{
function showMsg()
{
print “The programme is very interesting ”;
}
showMsg();
}
4试打印九九乘法表
5:试演示读取文件的操作
$filename = “html/cache.txt”;
$handle = fopen($filename, “r”);
$contents = fread($handle, filesize($filename));
fclose($handle);
6:试演示写入文件的操作
$handle = fopen(“html/cache.txt”,”w”);
fwrite($handle,”添加文字到文件中”);
fclose($handle);
7:PHP提供了那几种网页传递的方法,并说明各自的特点和作用:
8在服务器端的PHP接收程序中,必须依照
标签中的method 属性设定值,PHP关于窗体处理的「预定变量」有哪两种 试述两者的区别、特点、作用9:试列举读取文件内容的函数
file_get_contents()
fread()
file()
10:试列举写入文件内容的函数
fwrite()、fputcsv()、file_put_contents()
11:试列举过滤字符串空格的函数
ltrim rtrim rrim
12:试列举截取字符串的函数
13试述面向对象的基本特征
(1)客观世界由对象组成。
(2)具有相同数据(属性)和操作(方法)的对象可归纳成类。
(3)类可以派生出子类,子类除了继承父类的全部特性外还可以有自己的特性
(4)对象之间的联系通过消息传递(可理解为方法调用)来维系。
假设m1是类Manager的一个实例(或对象),当外界要求把这个对象所
代表的那位经理的级别改变为2时,就应以下面的方式向这个对象发
出一条消息: ml.ChangeLevel(2)消息传递
14:创建一个表,为其加入一个自动增长列,默认值列,非负数列
推荐专题: 开发技术(PHP)测试题