1. 面试高级php工程师,一般会问到哪些问题
高并发大访问量的mysql优化,服务器优化?
字段建索引、主从数据库、读写分离、表分区、负载均衡。
linux的慢查询日志会记录mysql的超时查询sql语句,定期察看进行优化。
2.大访问量下秒杀模块程序怎么设计,如果使用mysql会有多卖的情况,就是订单超过库存。
将订单数据缓存到内存,如果用数据库直接崩掉,毫无悬念的。
3.缓存的使用
能用静态的用静态,不能静态的用内存缓存,例如memcache、redis,不能缓存的用数据库。
4.session可不可以跨域?怎么跨域?
将PHP session机制重写(PHP提供),将session存储在memcache或者数据库就可以跨域了。
另外session能以三种方式存储,文件、数据库、缓存。
5.了不了解非关系型数据库?
mongodb
6.会不会写shell脚本以及linux的操作
还会问一下时下流行的东西,比如做没做过微信开发,例如微信支付开发、APP移动开发,等等问题。
问的核心东西都是围绕这些转的,如果有笔试会让你写sql,php功能(例如冒泡排序等排序),还有逻辑题。
我当初面试了很多,这是一个我的面试经验的总结,纯手打忘采纳。
2. 腾讯php面试题
腾讯php面试题
php程序员一般会遇到的面试题:
1. 基本知识点
HTTP协议中几个状态码的含义:503 500 401 200 301 302
Include require include_once require_once 的区别.
PHP/Mysql中几个版本的进化史,比如mysql4.0到4.1,PHP 4.x到5.1的重大改进等。
HEREDOC介绍
写出一些php魔幻方法;
一些编译php时的configure 参数
向php传入参数的两种方法。
(mysql)请写出数据类型(int char varchar datetime text)的意思; 请问varchar和char有什么区别;
error_reporting 等调试函数使用
您是否用过版本控制软件? 如果有您用的版本控制软件的名字是?
posix和perl标准的正则表达式区别;
Safe_mode 打开后哪些地方受限.
写代码来解决多进程/线程同时读写一个文件的问题。
写一段上传文件的代码。
Mysql 的存储引擎,myisam和innodb的区别。
2. web 架构,安全,项目经验
介绍xdebug,apc,eAccelerator,Xcache,Zend opt的使用经验。
使用mod_rewrite,在服务器上没有/archivers/567.html这个物理文件时,重定向到index.php?id=567 ,请先打开mod_rewrite.
MySQL数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化?
写出一种排序算法(原理),并说出优化它的方法。
请简单阐述您最得意的开发之作
对于大流量的网站,您采用什么样的方法来解决各页面访问量统计问题
您是否用过模板引擎? 如果有您用的模板引擎的名字是?
请介绍Session的原理,大型网站中Session方面应注意什么?
测试php性能和mysql数据库性能的工具,和找出瓶颈的方法。
正则提出一个网页中的'所有链接.
介绍一下常见的SSO(单点登陆)方案(比如dedecms整合discuz的passport)的原理。
您写过的PHP框架的特点,主要解决什么问题,与其他框架的不同点。
大型的论坛/新闻文章系统/SNS网站在性能优化上有什么区别?
相册类应用:要求在浏览器中能同时选中并上传多个文件,图片要求能剪裁,压缩包在服务器端解压。能上传单个达50M的文件。上传过程中有进度条显示。每个图片能生成四种大小缩略图,视频文件要转成flv供flash播放。叙述要涉及的各类开源软件和简单用途。
一群猴子排成一圈,按1,2,…,n依次编号。然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始数,再数到第m只,在把它踢出去…,如此不停的进行下去,直到最后只剩下一只猴子为止,那只猴子就叫做大王。要求编程模拟此过程,输入m、n, 输出最后那个大王的编号。用程序模拟该过程。
3. unix/linux 基本使用
linux下查看当前系统负载信息的一些方法。
vim的基本快捷键。
ssh 安全增强方法;密码方式和rsa key 方式的配置。
rpm/apt/yum/ports 装包,查询,删除的基本命令。
Makefile的基本格式,gcc 编译,连接的命令,-O0 和-O3区别。
gdb,strace,valgrind的基本使用.
4. 前端,HTML,JS
css盒模型。
javascript中的prototype。
javascript中this对象的作用域。
IE和firefox事件冒泡的不同。
什么是怪异模式,标准模式,近标准模式。
DTD的定义
IE/firefox常用hack.
firefox,IE下的前端js/css调试工具。
;3. php技术面试一般都是什么问题
可能会问以下问题:(这是一个多元的问题,这和你应聘的公司规模,行业,技术层次有一定的关系)
1、你会使用什么框架?
2、你知道PHP有哪些框架?
3、你知道或使用过哪些PHP库?
4、你用PHP写过框架吗?
5、你有作品吗?
6、你怎么调试PHP?
7、你知道设计模型吗?
8、说一下PHP个版本的差异。
9、说一下某函数的具体作用。
10、给你一个算法让你用PHP实现。
... ...
总之有很多问题可能是意料不到的,所以建议你去牛客网多练习一下或者去海投简历体验应聘过程,失败没什么大不了的。
4. 2022年PHP面试题大全(值得收藏)
求职 PHP 相关岗位,面试与笔试中的表现不仅考验口语能力,更关键的是技术实力。掌握最新的 PHP 面试题将大大提高求职效率。以下是一些精选的面试题,旨在帮助你顺利进入理想公司,获得理想薪酬:
更多内容,包括 MySQL 存储引擎的区别和网站流量管理策略,可以点击相关链接获取 PDF 版本的面试题大全。
5. PHP工程师面试常见问题有哪些
基础知识,数据库,框架,也很可能问你他们工作遇到的问题
6. PHP 面试问哪些问题可以比较准确的反映出应聘者的开发水平
问问这些:
命名空间怎么用,有什么好处
PHP下面如果过滤表单的内容,有哪些HTML的过滤库比较好用?
PDO、mysqli、mysql这三种操作数据库的方法,具体有哪些差异?
问问javascript/jquery,不懂javascript得php程序员要么没有什么经验,要么水平比较低。
再问问php的设计模式,这个是有没有接受过系统训练的基础了。
第一个问题答得好,证明有了解过现代php的开发,用什么框架应该都能快速上手。
第二、三个问题,都是开发中必定用到的基础的东西,算考查究竟懂不懂php。
第四个问题,关系到有没有问题解决能力,不懂javascript的php程序员肯定和前端搭配不好。
第五个问题,看看这个人有没有潜力呗。
11月1日补充:
中间某个问题得罪人了,先抱歉一下。我认为我太武断的说法也有道理,反正,这只是经验之谈,从上方老板的角度出发,肯定是没心思招个干不了活的人慢慢培养的,哪怕你宏观及看法方面很有远见。团队里面肯定要有各种各样的人和技能盏,看你的头儿如何建团队了。
7. 30道2020年PHP面试题整理(附带答案)
整理的一些面试题如有错误可评论区指出。
1. 使用过swoole吗,怎么设置心跳?
2. 如果访问量达到100万,选择缓存,你会选择redis还是memchache?选择memchace,因为它只有一种类型,key-value,而redis的类型比memchace多,导致它的并发没有memchace好。
3. psr2和psr4的区别?psr指的是php standards recommendation,意思是PHP标准建议。
psr2:编码风格向导
psr4:自动加载。
4. mb_strlen和str_len的区别?
5. 下面会输出什么?
6. 使用二分法查找50出现的位置?
7. 将上面的数组进行翻转,不使用内置函数?数组为:$arr = [1,3,5,12,34,45,50];
8. nginx负载均衡的算法有round robin、weight、IP_hash、url_hash、fair等,解释每种算法。
9. 优化下面的代码。
10. 实现一个单列模式。
11. 简述一下观察者模式。
12. 如何获取请求头的信息。
13. 高访问量的网站优化策略包括硬件和软件优化。
14. WebSocket原理。
15. Redis默认有16个库。
16. Linux进程之间通信方式有管道、信号量、消息队列、信号、共享内容和套接字。
17. Git合并分支的命令。
18. Laravel外面引入路由的步骤。
19. 使用redis队列防止商品超卖。
20. 请求中使用队列的场景。
21. 单引号和双引号的区别。
22. 微信支付、支付宝回调在服务器崩溃时的解决方法。
23. 输入网址回车的过程。
24. PHP常见字符串处理函数和数组。
25. 数据库优化策略包括表设计、字段选择、引擎选择、SQL优化、减少数据库访问和硬件优化。
26. 减少数据库访问次数的原因。
27. require和include的区别。
28. PHP7和PHP5的区别。
29. 数据库优化策略。
30. Laravel保存session的步骤。
如果您对PHP后端技术或PHP架构技术感兴趣,可以加入官方群,群内有管理整理的知识体系、源码和学习视频等资料,免费领取。这门课程深度对标腾讯T3-T4标准,适合1-5年的PHP开发者进阶中高级、架构师,为自己增值涨薪。加入BAT特训营可获得内推大厂名额以及GO语言学习权限。
8. 在面试PHP工程师时会被问哪些问题
面试官在面试求职的PHP工程师时所问的问题千奇百怪,但由于他们需要的是一个PHP工程师,所以他们提问的问题一般不会偏离以下几个角度:
技术线(偏深度):
1. 基础知识,比如数据结构,多线程,I/O,Http协议等。
2. 语言深度,比如PHP的运行机制,性能优化,APC(以及其原理等)。
3. 源码阅读,比如看过哪些框架,其中的机制是怎么样的,往细了问。
4. 知识宽度,静态语言,比如C、Java等,我始终觉得只会一门语言不是什么好事情。
5. 项目经验,做过什么,是否复杂,负责什么,做了什么。
业务线(偏能力):
1. 业务能力,也就是之前做过的项目(担任的角色,负责的部分)。
2. 沟通能力,这一点能从沟通中就看出来。
3. 主动性,之前主动推动的事物等等,哪怕是一个小的点也可以。
4. 抗压能力,之前做过的项目中去挖掘细节。
5. 技术宽度,了解不一定要深入,一般会问一些比较泛的,比如多语言,Linux操作,HTTP协议等。