您的位置:首页 > 编程语言 > PHP开发

记新浪php工程师笔试题

2018-03-29 18:25 232 查看
最近同事去新浪面试,给我们带来了那边的笔试题,大家一起参考下:

1).写出几种php魔法函数,并说明它们的使用场景和含义

2).用浏览器访问http://www.weibo.com/?query=a,写出此次请求的request headers信息

3).写出你知道的php进程间通信的几种方式

4).防止sql注入和xss攻击的方法

5).php类静态调用和实例化调用各自的利弊

6).数组$arr = ['Org', 0.23, 'abc', 'Are', 11, 456, 'oh', 'Basic', 'sort', 'EALL'],分别写出sort($arr),sort($arr, SORT_NUMERIC),sort($arr, SORT_STRING)后的$arr

7).有两个文本文件 A.txt B.txt
A.txt 3000万行,userid唯一,userid和username以空格分隔,如下所示:
userid  username
1       yi
2       er
3       san
...     ...
B.txt 3000万行,userid唯一,userid和realname以空格分隔,如下所示:
userid  realname
1       一
2       二
3       三
...     ...
请写一段代码,将B.txt中userid对应的username在A.txt里找出来,填充到B.txt的第三列,并给出时间复杂度。

8).用php写一个函数,获取一个文本文件最后$n行内容,要求尽可能效率更高,并可以跨平台使用

9).写出一个随机红包算法(红包总额$n分钱,红包份数$m人,$n>=$m),要求:
不能有人分不到;分配不能太过平均;拆红包时实时计算金额,不能提前分配好

10).有一个30万条的IP地址库如下:
10.23.25.0  10.23.25.255    湖南省 长沙市
... ...
请设计出一个实现方式,可以给某个IP找到对应的省和市。要求效率尽可能的高。

11).请设计一个投票系统,满足如下要求
a.一个用户10分钟内对一个投票只能成功完成一次。
b.一个用户每个自然日最多只能成功完成50个不同的投票。

12).微博系统中,有各种各样的通知状态和计数系统,如:@通知,私信通知,评论通知等等,请
设计一个通用的计数系统,要求高效稳定,并充分考虑实际应用中的各种情况。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  面试题