最新PHP面经 作业盒子+奇虎360

作业盒子

目前使用php的版本?    7.1.15

原生sql写得多吗?嗯,然后出题:

学生:老师=n:n

老师:课程=1:n

学生:课程=n:n

如何建表?

teacher(id,name,mobile)

student(id,name)

class(id,name,teacherid)

relate(studentid,classid)

求手机号=15086930659的老师所教的学生姓名

select s.name

from student s

left join relate r on s.id=r.studentid

left join class c on r.classid=c.id

left join teacher t on t.id=c.teacherid

where t.mobile='15086930659'


求教学生人数>20的所有老师的手机号

select t.mobile

from teacher t

left join class c on c.teacherid=t.id

left join relate r on r.classid=c.id

left join student s on t.id=r.studentid

group by t.mobile

having count(s.id)>20

注意:使用group by分组,分组条件和select列一样,只有一种情况,select列可多一个不是group by条件的,比如:count(*), avg(grade)

等等



斐波那契数列


列举php常用的数组

array+array与array_merge区别

usort函数举例说明



mvc,其中model层和controller层还可以继续分层吗?

答:可分middle层,service层等,尽量让controller层只负责业务上逻辑,model层负责

pdo

PDO(PHP Data Objects)是一种在PHP里连接数据库的使用接口。


列举常见的linux命令

vim tail -f  ps  wc -l  find  awk(相当于grep+sed)等等

查询test.log文件中接口耗时>200s的个数(假设接口耗时在第2个字段中)

cat test.log | awk '{if($2>200) print $0}'|wc -l


简述3次握手和4次挥手。3次握手可改成2次吗?4次挥手可改为3次吗?

3次握手不可改成2次,但4次挥手可改为3次


知道QPS吗?quest per second

静态和动态个数个work进程的优缺点

对于动态个,要初始>=5个,不能有20个空闲,如何计算分配?

假若QPS=100,一个进程处理要200ms,那只要开(5个)进程即可


计算本周的开始与结束

详见:http://blog.csdn.net/wuhuagu_wuhuaguo/article/details/79645635





360

面试官叫翟xx,特别傲慢,或许有才华所以恃才傲物吧,但言行举止很让人不爽。


大量数据求最大的k个数------根堆(O(nlogk))和BFPRT算法(O(n))

假设一维数组int [] a={-9,1,3,60,-18,2},求max{a[j]-a[i] | j>i}

详见:http://blog.csdn.net/wuhuagu_wuhuaguo/article/details/79644381 



select * from A join B on A.id=B.id whereA.name ='zs'

问这里join原理或join怎么执行的,先join还是先where,需要建临时表吗?

详见:http://blog.csdn.net/wuhuagu_wuhuaguo/article/details/79644523 

索引怎么建?索引的原理

详见:http://blog.csdn.net/wuhuagu_wuhuaguo/article/details/72867374 

http://blog.csdn.net/wuhuagu_wuhuaguo/article/details/79627488 

redis有哪些结构?redis如何处理过期的键?

k-v,hash,hget,hset

详见:http://blog.csdn.net/wuhuagu_wuhuaguo/article/details/79635872 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值