php面试问答

news/2024/9/17 17:58:52
结合实际PHP面试,汇总自己遇到的问题,以及网上其他人遇到的问题,尝试提供简洁准确的答案

包含MySQL、Redis、Web、安全、网络协议、PHP、服务器、业务设计、线上故障、个人简历、自我介绍、离职原因、职业规划、准备问题等部分

GitHub: https://github.com/colinlet/P...

感觉不错的话,欢迎 Star~~

一般面试流程

面试流程

目录 - 阅读

MySQL

  • MySQL 体系结构
  • 字段类型
  • char 和 varchar 数据类型区别
  • 存储引擎
  • 常见索引
  • 聚族索引和非聚族索引的区别
  • 事务机制
  • BTree 与 BTree-/BTree+ 索引原理
  • 参考资料

Redis

  • Redis 主要特点
  • Redis 数据类型
  • 跳跃表与 Redis
  • 一致性哈希
  • 分布式锁
  • 参考资料

Web

  • JavaScript事件的三个阶段
  • 闭包原理及应用
  • 跨域
  • JSONP 原理
  • CSS 选择器的优先级
  • CSS 盒子模型
  • CSS 清除浮动
  • 相对定位 relative、浮动 float、绝对定位 absolute 区别
  • VUE 双向绑定原理
  • 性能优化
  • 参考资料

安全问题

  • CSRF 攻击
  • XSS 攻击
  • SQL 注入
  • IP 地址能被伪造吗
  • include 请求参数
  • md5 逆向原理
  • DOS 攻击
  • 参考资料

网络协议

  • UDP 的主要特点
  • TCP 握手三次,断开四次,TIME-WAIT
  • socket
  • HTTP 协议
  • HTTPS 通信原理
  • websocket 协议
  • GET 与 POST 请求方式区别
  • RESTful API
  • 参考资料

PHP

  • echo、print、print_r、var_dump的区别
  • 超全局变量
  • PHP 支持回调的函数,实现一个
  • 发起 HTTP 请求有哪几种方式,它们有何区别
  • 对象关系映射/ORM(Object Relational Mapping)
  • MVC 的理解
  • 类的静态调用和实例化调用
  • 常见 PHP 框架特点
  • 设计模式(design pattern)
  • 工厂方法模式与抽象工厂模式区别
  • base64 编码原理
  • ip2long 实现
  • 代码执行过程
  • 弱类型变量如何实现
  • 垃圾回收机制
  • 进程间通信方式
  • 链式调用实现
  • 多进程同时写一个文件
  • PHP 拓展
  • PHP7 新特性
  • PHP7 底层优化
  • 构造函数和析构函数
  • PHP 不实例化调用方法
  • 参考资料

服务器

  • 进程、线程、协程区别
  • Linux 进程
  • 反向代理
  • 负载均衡
  • nginx 中 fastcgi_pass 监听,unix socket 和 tcp socket 的区别
  • 消息队列
  • 参考资料

业务设计

  • 网易盖楼
  • 秒杀设计
  • 消息队列
  • 共享 SESSION
  • 下单后30分钟未支付取消订单
  • IP对应省市效率尽可能高
  • 详细描述输入地址到打开网页过程
  • 参考资料

线上故障

  • 客户端热更新失败
  • Redis 实例 used_memory 达到80%
  • 游戏任务完成了进度未更新
  • 测试服 HTTP 请求未响应
  • 游戏账号被盗

个人简历

自我介绍

离职原因

  • 跳槽频繁
  • 这次换工作原因

职业规划

准备问题

  • 工作挑战大不大?
  • 项目开发是否写测试用例,项目上线先是否会进行压力测试
  • 业务前景如何?
  • 技术氛围如何?
  • 根据这次面试,对个人进行评价,帮助成长
  • 融资计划
  • 是否有加班费/调休,公司福利,社保公积金缴纳基数

声明

本资料仅供参考,不保证正确性

作者:凌枫 Email:colinlets@gmail.com 链接:https://github.com/colinlet/P...

关键字

php面试、php面试题、php面试题2019

http://lihuaxi.xjx100.cn/news/236147.html

相关文章

WinXp安装Oracle 11g Express Edition

由于在虚拟机上学习(怕把真机器搞坏了),这次是在Windows XP上安装Oracle 11g Express。 本文安装的是Oracle 11g Express,是Oracle数据库的快速版(学习版),安装包大小只有几百MB。 到Oracle的…

SnackbarUtilDemo【Snackbar的封装类】

版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这个工具类参考的是《没时间解释了,快使用Snackbar!——Android Snackbar花式使用指南》,代码几乎一样,所以想要了解具体原理或者更详细信息请阅读…

跨域的四种方式

本文主要是关于跨域的几种方式,关于什么是跨域这里就不多说了,写这个也是为了记住一些知识点的。 一. jsonp jsonp的跨域方式很容易理解,页面的的每一个script标签浏览器都会发送get请求获取对应的文本资源,获取到了之后&#xff…

使用WinPcap和libpcap类库读写pcap文件(001)开发环境配置

最近的项目要求写一个读写pcap文件的小程序,用来修改pcap中的部分信息,实现pcap的定制。 所以必须学会使用wireshark并能有利用WinPcap库和libpcap库进行开发。 虽然本文记录的都是windows下使用WinPcap进行开发,但是由于希望程序能够跨平台…

洛谷P3723 [AH2017/HNOI2017]礼物(FFT)

传送门 首先,两个数同时增加自然数值相当于只有其中一个数增加(此增加量可以小于0) 我们令$x$为当前的增加量,${a},{b}$分别为旋转后的两个数列,那么$$ans\sum_{i1}^n(a_ix-b_i)^2$$ 然后把第$i$项提出来并展开&#x…