PHP笔试题2
2011年04月24日
说在前面:
1、以下题目,除了编程任务外其他都需要写在给你提供的草纸上。纸张是珍贵的地球资源,请节约使用。编程任务在有相应的环境时,会要求上机书写,实在没有条件,就只能写在草纸上了。
2、时间:
基础任务+进阶任务+设计任务 = 90分钟
编程任务 = 60分钟
基础任务:
1、请列举你能想到的UNIX信号,并说明信号用途。
2、请列举、你能想到的所有的字符串查找算法,并加注释简单说明。
3、有一个IP地址(192.168.0.1),请写出其32位无符号整数形式。
4、写出、你能想到的所有HTTP返回状态值,并说明用途(比如:返回404表示找不到页面)
基础任务-选作(会得到额外分数):
1、画几个你最熟悉的SERVER端模型出来(格式不重要,尽量将图画清楚,说明思路即可)
进阶任务:
1、PHP的垃圾收集机制是怎样的?
说明:
1)如果,你熟悉PHP源码,那么请从源码入手,回答些问题,会获得额外加分
2)如果,你不熟悉PHP源码,那么尽你所能,多写点东西,包括利用自己的编程直觉得到的信息,都可以。
3)对,则有分,错误不扣,不写无分。
2、请写出HTTP头,并符合以下要求:
1)这是一个post请求
2)目标:http://www.example.com:8080/test
3)POST变量:
username: test
pwd: test2
intro: Hello world!
4)包含以下COOKIE信息:
cur_query: you&me
说明:
1)如果,你记不得某个HTTP协议中的指令字了,那么,无奈这举是用"汉字"代替。
2)如果,你能记住更多的HTTP协议指令字,那么多写几句,总是没坏处,对吧?
3)最关键的,只需要画出正确的"轮廓"(还记得httpwatch等工具打印出来的头部吗?那就是"轮廓"的含义),也会有分数,但如果,连"轮廓"都写错了,那么就很遗憾了。
设计任务:
1、最近总有人骚扰我们的投票模块,需要你来设计一个投票限制的东东
要求如下:
1)要求每个QQ号码(假设此QQ号码在UNIT32内可以表示)10分钟这内只能投5票。
2)我们的用户很踊跃,平均每天要有2000万人左右通过此程序投票。
说明:
1)无需写代码,只需要图跟文字即可。
2)对于关键逻辑,请用图加代码表示出来,这也是对你文字表达能力的一个考验。
3)对你能想到的所有的边界条件列出来,这是对你逻辑思维全面与敏捷性的考验。
4)存储部分,尽你所能吧。如果,你需要一个自己设计的存储层,那么把这个存储层的实现,用文字+图片方式描述清楚,要是设计合理,你会获得华丽的奖分。
编程任务:
1、我们碰到了大麻烦,一个新来的传教士惹恼了上帝,上帝很愤怒,要求我们把圣经(bbe.txt)背熟,直至他说哪个单词,我们就要飞快的回答出这个单词在第几行第几个单词位置。听说你是个优秀的程序员,那么髟助我们完成这个不可能的任务吧。
要求如下:
1)/myworks/example/bbe.txt,98版本英文圣经一本
2)输入部分要求如下:php ./example.php [单词]
3)输出部分如下:[单词] 1,2 2,4 5,6 表示:此单词在1行2列(第二个单词),2行4列...
说明:
1)此文本4MB之巨...
2)单词的含义:由英文字母(大小写),数字(0-9)组成的串
3)提供给你的机器OS为ubuntu 9.10,内存只有1G,而且,很不幸的,其中700M用来做了别的
4)上机考试不允许上网,但我装了man文档以及读取CHM以及PDF的阅读器,在电脑的桌面的CHM文件夹中,有相应的PHP参考手册
5)算法复杂度要求不能大于O(N^2)(就是N的平方)
6)什么?PHP低效且用起来不顺手,好的,你可以用别的语言来实现。但注意:提供给你的机器上只有python 2.4/perl 5.8/gcc[g++] 4.1
=============
1.在PHP中,当前脚本的名称(不包括路径和查询字符串)记录在预定义变量(1)中;而链接到当前页面的URL记录在预定义变量(2)中。
2.执行程序段将输出(3)。
3.在HTTP 1.0中,状态码 401 的含义是(4);如果返回"找不到文件"的提示,则可用 header 函数,其语句为(5)。
4.数组函数 arsort 的作用是(6);语句 error_reporting(2047)的作用是(7)。
5.PEAR中的数据库连接字符串格式是(8)。
6.写出一个正则表达式,过虑网页上的所有JS/VBS脚本(即把标记及其内容都去掉):(9)。
7.以Apache模块的方式安装PHP,在文件http.conf中首先要用语句(10)动态装载PHP模块,
然后再用语句(11)使得Apache把所有扩展名为php的文件都作为PHP脚本处理。
8.语句 include 和 require 都能把另外一个文件包含到当前文件中,它们的区别是(12);为了避免多次包含同一文件,可以用语句(13)来代替它们。
9.类的属性可以序列化后保存到 session 中,从而以后可以恢复整个类,这要用到的函数是(14)。
10.一个函数的参数不能是对变量的引用,除非在php.ini中把(15)设为on.
11.SQL 中LEFT JOIN的含义是(16)。
如果 tbl_user记录了学生的姓名(name)和学号(ID),
tbl_score记录了学生(有的学生考试以后被开除了,没有其记录)的学号(ID)和考试成绩(score)以及考试科目(subject),
要想打印出各个学生姓名及对应的的各科总成绩,则可以用SQL语句(17)。
12.在PHP中,heredoc是一种特殊的字符串,它的结束标志必须(18)。
13.写一个函数,能够遍历一个文件夹下的所有文件和子文件夹。
14.简述论坛中无限分类的实现原理。
15.设计一个网页,使得打开它时弹出一个全屏的窗口,该窗口中有一个文本框和一个按钮。用户在文本框中输入信息后点击按钮就可以把窗口关闭,而输入的信息却在主网页中显示。
答案(填空):
1. echo $_SERVER[''PHP_SELF'']; echo $_SERVER["HTTP_REFERER"];
2. 0
3. (4)未授权 (5) header("HTTP/1.0 404 Not Found");
4. (6)对数组进行逆向排序并保持索引关系 (7)All errors and warnings
5. 没弄明白
6. /].*?>.*?/si
7.(10) LoadModule php5_module "D:/xampp/apache/bin/php5apache2.dll"
(11) AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .php .php5 .php4 .php3 .phtml
8.(12) 发生异常时include产生警告require产生致命错误 (13) require_once()/include_once()
9. serialize() /unserialize()
10. allow_call_time_pass_reference
11. (16) 自然左外连接
(17) select name , count(score) as sum_score from tbl_user left join tbl_score on tbl_user.ID=tbl_score.ID group by tbl_user.ID
12. 结束标识符所在的行不能包含任何其它字符除";"
13.
/**
* 遍历目录,结果存入数组。支持php4及以上。php5以后可用scandir()函数代替while循环。
* @param string $dir
* @return array
*/
my_scandir($dir)
{
$files = array();
if ( $handle = opendir($dir) )
{
while ( ($file = readdir($handle)) !== false )
{
if ( $file != ".." && $file != "." )
{
if ( is_dir($dir . "/" . $file) )
{
$files[$file] = rec_scandir($dir . "/" . $file);
}
else
{
$files[] = $file;
}
}
}
closedir($handle);
return $files;
}
}
发表评论
-
批处理不显示dos窗口
2012-01-20 10:05 697批处理不显示dos窗口 2010年07月26日 两段运行 ... -
Office Powershell Cookbook (Office powershell 常见操作)
2012-01-20 10:05 571Office Powershell Cookbook (Off ... -
【转】WMA Lossless Decoder
2012-01-20 10:05 803【转】WMA Lossless Decoder 2010年0 ... -
QTP录制Delphi客户端
2012-01-20 10:05 551QTP录制Delphi客户端 2010 ... -
VBS利用SendKeys输入中文字符的方法
2012-01-19 15:07 837VBS利用SendKeys输入中文 ... -
谈VBS在Hacking中的作用-挑选网速快的肉鸡
2012-01-19 15:07 647谈VBS在Hacking中的作用-挑选网速快的肉鸡 2011 ... -
VBS整人代码 很多 测试把我给整安逸了
2012-01-19 15:06 982VBS整人代码 很多 测试把我给整安逸了 2010年08月2 ... -
利用VBS让QQ永远在线
2012-01-19 15:06 567利用VBS让QQ永远在线 201 ... -
VBS Runas 自动明文的输入密码
2012-01-19 15:06 828VBS Runas 自动明文的输入密码 2010年06月23 ... -
X Window 设定介绍(2)
2012-01-17 04:53 522X Window 设定介绍(2) 2010年06月05日 ... -
linux 下的mplayer安装
2012-01-17 04:53 630linux 下的mplayer安装 2010年07月28日 ... -
KKCapture视频录像软件下载
2012-01-17 04:53 902KKCapture视频录像软件下 ... -
cegui基础2
2012-01-17 04:53 606cegui基础2 2010年11月25日 cegui 2 ... -
Motorola(摩托罗拉)比较不错的机子,直接秒杀诺基亚N8,不看看你会后悔的哦。。。
2012-01-17 04:53 655Motorola(摩托罗拉)比较不错的机子,直接秒杀诺基亚N8 ... -
正则表达式的写法(转)
2012-01-16 03:44 696正则表达式的写法(转) 2010年12月22日 正则表达 ... -
AS3常用正则表达式
2012-01-16 03:44 810AS3常用正则表达式 2009年07月04日 正则表达式 ... -
理解 Flex itemRenderer - 内联渲染器
2012-01-16 03:44 680理解 Flex itemRenderer - 内联渲染器 2 ... -
flash/flex开源框架aswing教程1
2012-01-16 03:44 662flash/flex开源框架aswing教 ... -
flex各种用法
2012-01-16 03:44 517flex各种用法 2010年02月22日 //获得屏幕的 ...
相关推荐
php笔试题 百度
PHP高级程序员笔试题(含答案),应用解答题,招高级PHP必备
很不错的笔试题 考察的范围很广 能考察出应聘者的能力
最新PHP笔试试题
2017最新最全PHP面试题笔试题2017最新最全PHP面试题笔试题2017最新最全PHP面试题笔试题2017最新最全PHP面试题笔试题2017最新最全PHP面试题笔试题
初级PHP程序员笔试题——结合算法的思想!
PHP初级程序员笔试题(含答案),选择题+应用解答题,招PHP必备
php笔试题.rarphp笔试题.rarphp笔试题.rarphp笔试题.rarphp笔试题.rarphp笔试题.rarphp笔试题.rarphp笔试题.rarphp笔试题.rarphp笔试题.rar
腾讯PHP工程师笔试题,能够更好的准备面试了,各位可以参考参考!!!
应聘笔试题
LAMP兄弟连收集5年的面试题,命中率高达90%,面试前必备
php笔试题汇总 1、抓取远程图片到本地,你会用什么函数? fsockopen, A 2、用最少的代码写一个求3值最大值的函数. function($a,$b,$c){ return $a>$b? ($a>$c? $a : $c) : ($b>$c? $b : $c ); }
经典回放,不错的面试题哦.适合初级程序员面试练习。
好久没有总结过这么详细的PHP笔试题宝典了。。附有答案。。PHP的程序员一定要看,,基本上能涵盖市面上百分之70的笔试题。。CSDN下载积分不够着可以重新申请账号下载送30积分。祝大家笔试成功!!!
超值的,php面试笔试题目及某些大公司的php面试题目。赶快下吧
个人搜集的PHP开发工程师的一些笔试题,附答案,希望对大家有用
2015年8月份的阿里校招笔试题。PHP岗位。
涵盖2012各大公司笔试题,2013找工作必备
美图-PHP笔试题.docx