当前位置:文档之家› PHP面试题

PHP面试题

PHP核心课程测试题一.单选题( 1’ x 50 = 50’ )1. PHP是哪一种类型的语言( )A.编译型B.解释性C.两者都是D.两者都不是2. 在用浏览器查看网页时出现404错误可能的原因是( )A.页面源代码错误B.文件不存在C.与数据库连接错误D.权限不足3. 若x,y为int类型变量,则执行以下语句后,y的值为( )A.1B.2C.3D.04.下列代码执行后,输出结果正确的是( )A.1B.2C.运行错误D.都不对5. 执行完以下代码后,变量$num的值为( )A.10B.20C.30D.显示错误6. 以下程序运行结果为( )A.5 + 3 + 1 = 9B.1 + 5 + 3 =9C.提示错误,并有显示:+ 3 + 1 = 4D.97. 下面的脚步运行以后,$array数组所包含的值是( )A.arra y (‘2’, ’2’)B.array (1, 1)C.array (2, 2)D.array (null,null)8. 查询名字中第2个字为“阳”的学生的姓名和学号,正确的是( )A.Select Sname,Sno from student where Sname like ‘_阳%’;B.Select Sname,Sno from student where Sname like ‘阳%’;C.Select Sname,Sno from student where Sname like ‘_阳’;D.Select Sname,Sno from student where Sname like ‘阳_%’;9. 下面哪个函数可以打开一个文件,以对文件进行读和写操作?( )A.fget()B.file_open()C.fopen()D.open_file()10.PHP是一种______脚本语言,基于______引擎。

PHP常被用来开发动态的______内容,此为,它同样还可以被用来生成______(以及其它)文档。

( )A.动态,PHP,数据库,HTMLB.嵌入式,Zend,HTML,XMLC.基于Perl的,PHP,Web,静态D.嵌入式,Zend,Docbook文档,MySQLE.基于Zend的,PHP,图像,HTML11.什么情况下声明函数时不能给参数赋默认值()A.当函数只有一个参数时B.当函数是类中的成员时C.当参数是通过引用传递时D.永远不会12.借助继承,我们可以创建其他类的派生类,那么在PHP中,子类最多可以继承几个父类?()A.一个B.两个C.取决于系统资源D.想要几个有几个13.如何在类的内部调用getName方法?()A.$self => getName( );B.$this->getName( );C.$current->getName( );D.$this::getName( );A.调用静态方法myMethodB.生成MyClass的实例并调用myMethod方法C.产生一个语法错误D.调用名为MyClass::myMethod() 的方法15.以下脚本输出什么?()A.Animal calledB.一个错误C.一个警告D.什么都没有16.以下脚本输出什么?()A.张三B.李四C.NullD.什么都没有17.如果不给Cookie设置过期时间会怎样?()A.立刻过期B.永不过期C.Cookie无法设置D.在浏览器会话结束时过期18.在默认情况下,PHP把会话(SESSION)数据存储在_____里。

()A.文件系统B.数据库C.内存D.以上都不是19.假设浏览器没有重启,那么在最后一次访问后的多久,会话(SESSION)才会过期并被回收?()A. 1440秒后B. 在session.gc_maxlifetime设置的时间过了后C. 除非手动删除,否则永不过期D. 除非浏览器重启,否则永不过期A.aB.bC.cD.一个警告21.变量$email=****************,以下哪项能得到字符串?()A.substr($email, strpos($email, ‘@’));B.strstr($email, ‘@’);C.substr($email, strpos($email, ‘@’) + 1);D.strrpos($email, ‘@’);22.如果用+操作符把一个字符串和一个整型数字相加,结果将怎样?()A.解释器输出一个类型错误B.字符串将被转成数字,再与整型数字相加C.字符串将被丢弃,只保留整型数字D.字符串和整形数字将连接成一个新字符串A.xB.axleC.axxleD.applex24.函数_____能读取文本文件中的一行。

读取二进制文件或者其他文件时,应当使用_____函数。

()A.fgets(),fseek()B.fread(),fgets()C.fputs(),fseek()D.fgets(),fread()25.DESC在这个查询中起什么作用?()A.id相同的记录按name升序排列B.id相同的记录按name倒序排列C.返回的记录先按name排序,再按id排序D.结果集中包含对name字段的描述26.如果一个字段能被一个包含group by 的条件的查询语句读出,以下哪个选项的描述正确?()A.该字段必须有索引B.该字段必须包含一个聚集值C.该字段必须是主键D.该字段不能包含NULL值27. 以下查询输出什么?()A.table1和table2不相同的记录B.两个表中相同的记录C.table1中的记录条数乘以table2中的记录条数再减去两表中相同的记录条数D.两表中不同记录的条数28.以下哪个说法正确?()A.使用索引能加快插入数据的速度B.良好的索引策略有助于防止跨站攻击C.只有数字记录行需要索引D.应当根据数据库的实际应用按理设计索引29.下列哪个函数可以用于页面跳转?( )A.redir( )B.header( )C.location( )D.recirect( )30.当把一个有两个同名元素的表单提交给PHP脚本时会发生什么?( )A.他们组成一个数组,存储在超级全局变量数组中B.第二个元素的值加上第一个元素的值后存储在超级变量数组中C.第二个元素将覆盖第一个元素D.第二个元素将被自动重命名31.循环语句for($x = 2; $x > 10; $x--),循环次数是( )A. 8次B. 10次C. 死循环D. 0次32.执行如下代码,其输出结果是()A. 4B. 5C. 出错D. 都不是33.执行如下代码,结果是()A.-3B.4C.-7D.134.执行如下代码,其结果为()A. 程序出错B. i equals 0C. 输出i equals 0 i equals 1 i equals 2D. 出现一个警告,并输出i equals 0 i equals 1 i equals 235. 执行如下代码,输出结果为( )A.rootB. adminC. 出现一个警告,并输出rootD. 出现一个警告,并输出admin36. 执行如下代码,输出结果为( )A. int (3)B. NULLC. 提示未定义变量错误D. 都不对37. 执行如下代码,输出结果为( )A.int (3)B. NULLC. 提示未定义变量错误D. 都不对38. 执行如下代码,输出结果分别为( ) A. 17,20B. 17,21C. 18,20D. 18,21A. 5 4 3 2B. 2 3 4 5C. 2 2 3 4D. 出错,死循环40. 执行如下代码,输出结果为( )A. 1B. 什么都没有C. 出错D. 以上都不对41. 执行如下代码,输出结果为() A. 1B.什么都没有,并提示一个警告C. 出错D. 以上都不对A. 3 3 3B. 3 4 5C. 4 4 4D. 4 5 643.下面哪一项不是PHP中面向对象的机制()A.类B.属性、方法C.单一继承D.多继承44.以下是一个类的声明,对成员属性正确的赋值方式是()A.$test->a = “abc”;B.Test::$b = “abc”;C.Test::setA(“abc”);D.$test->b = “abc”;45.执行语句“SELECT ('a'='a') AND ('c'<'d');”结果为( )A.1B.0C.NULLD.False46. 使用下列哪个命令可以使结果表中除了匹配行外,还包括右表有的但左表中不匹配的行?()A.LEFT OUTER JOINB.RIGHT OUTER JOINC.NA TURAL JOIND.INNER JOIN47. 在使用union进行集合运算时,保留所有的纪录的关键字为()A.ALLB.bothC.distinctD.different48. 消除查询结果中重复纪录的关键字为( )A.distinctB.limitC.ALLD.having49. 主键的组成()A.只有一个属性B.不能多于3个属性C.必须是多个属性D.一个或多个属性50.MySQL数据库属于哪种数据模型()A.层次模型B.网状模型C.关系模型D.逻辑模型二.不定项选择( 1’ x 20 = 20’ )1.安装Web服务器程序后,在地址栏中输入( ),可以访问站点默认文档。

A.在局域网中直接输入服务器的IP地址B.在局域网中直接输入服务器所在计算机的名称C.如果是在服务器所在的计算机上,直接输入http://127.0.0.1D.如果是在服务器所在的计算机上,直接输入http://127.0.0.12. 下面选项中,哪些属于URL的组成部分?( )A.传输协议B.主机C.端口D.Internet3. 下面哪些是SQL的聚合函数( )A.A VGB.SUMC.MAXD.CONCATE.COUNT4. 取得查询语句的结果集中的记录函数有( )A.mysql_fetch_rowB.mysql_fetch_assocC.mysql_num_rowsD.mysql_fetch_arrayE.mysql_fetch_object5. 要获取数组的大小,可以使用函数( )A.list( )B.count( )C.length( )D.sizeof( )6. 下面哪些可以将john 添加到users 数组中? ( )A.$users[] = ‘john’;B.array_add($users,’john’);C.array_push($users,‘john’);D.$users [“name”]= ‘john’;7.下面那些标签可以作为PHP起始/结束标记()A.<% %>B.<? ?>C.<?= ?>D.<?php ?>E.<! !>>8.下面哪些符合PHP语法?()A.$_10B.${“MyVar”}C.&$varD.$10_aE.$aVar9.以下哪些是把整型变量$a的值乘以4?()A.$a *= pow(2, 2);B.$a >>= 2;C.$a <<= 2;D.$a += $a + $a;E.一个都不对10.假设定义了一个Person类,它的构造函数的函数名是什么?()A.__constructB.initializeC.personD.__Person11. index.php脚本如何访问表单元素email的值?()A.$_GET[“email”]B.$_POST[“text”]C.$_POST[“email”]D.$_REQUEST[“email”]12. 以下脚本将如何影响$s字符串?()A.尖括号<>会被转成HTML标记,因此字符串将变长B.没有变化C.在浏览器上打印该字符串时,尖括号是可见的D.在浏览器上打印该字符串时,尖括号及其内容被识别为HTML标签,因此不可见。

相关主题