结合实际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

php面试问答的更多相关文章

  1. JAVA多线程和并发基础面试问答(转载)

    JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...

  2. [转] JAVA多线程和并发基础面试问答

    JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...

  3. JAVA多线程和并发基础面试问答

    转载: JAVA多线程和并发基础面试问答 多线程和并发问题是Java技术面试中面试官比较喜欢问的问题之一.在这里,从面试的角度列出了大部分重要的问题,但是你仍然应该牢固的掌握Java多线程基础知识来对 ...

  4. 【多线程】JAVA多线程和并发基础面试问答(转载)

    JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...

  5. 28个MongoDB NoSQL数据库的面试问答

    MongoDB是目前最好的面向文档的免费开源NoSQL数据库.如果你正准备参加MongoDB NoSQL数据库的技术面试,你最好看看下面的MongoDB NoSQL面试问答.这些MongoDB NoS ...

  6. .NET面试问答集锦

    程序员级别鉴定书(.NET面试问答集锦) 提供避免元素命名冲突的方法 DOM适合的使用场景是什么?是否有尺寸限制? DOM是一种与浏览器,平台,语言无关的接口,使你可以访问页面其他的标准组件. DOM ...

  7. C语言面试问答5

    12个滑稽的C语言面试问答——<12个有趣的C语言问答>评析(5) 前文链接:http://www.cnblogs.com/pmer/archive/2013/09/17/3327262. ...

  8. C语言面试问答(3)

    12个滑稽的C语言面试问答——<12个有趣的C语言问答>评析(3) 前文链接:http://www.cnblogs.com/pmer/p/3322429.html 5,atexit wit ...

  9. (转)JAVA多线程和并发基础面试问答

    JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...

  10. .net面试问答

    转载自:https://www.cnblogs.com/dingfangbo/p/5768991.html .net面试问答(大汇总)   原文://http://blog.csdn.net/weny ...

随机推荐

  1. Node.js实战(六)之Npm

    NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从NPM服务器下载并 ...

  2. Python2.7-浙江省实时天气爬取

    先对中国天气网的实时天气数据进行了研究,数据在http://www.weather.com.cn/weather1d/101010100.shtml中,可以通过城市代码进行爬取,但实况数据是用JS动态 ...

  3. jsonp小案例

    jsonp详解 例子:

  4. JAVA程序员必看的15本书-JAVA自学书籍推荐

    作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水 ...

  5. 何谓BLDC电机?BLDC电机是如何旋转的?

    何谓BLDC电机?BLDC电机是如何旋转的?

  6. 反向路径过滤——reverse path filter

    原文地址:反向路径过滤——reverse path filter 作者:pwp_cu 反向路径过滤——reverse path filter 一.原理先介绍个非对称路由的概念参考<Underst ...

  7. 一文让您全面了解清楚HBase数据库的所有知识点,值得收藏!

    一.HBase基本概念:列式数据库 在Hadoop生态体系结构中,HBase位于HDFS(Hadoop分布式文件系统)的上一层,不依赖于MapReduce,那么如果没有HBase这种Nosql数据库会 ...

  8. [Usaco2009 Feb]Revamping Trails 道路升级 BZOJ1579

    分析: 比较裸的分层图最短路,我的实现方式是,每次求出1所有节点的最短路,之后用每一个节点更新与其相连的节点(取较小值),之后做K次,就求出了分层图的最短路了. 附上代码: #include < ...

  9. Redis Replication

    Replication 官网说明:http://www.redis.io/topics/replication Redis使用异步复制; 一个Master可以有多个Slaves; Slaves可以接收 ...

  10. mysql图形化界面MySQL_Workbench

    1,下载最新版本的MySQL Workbench,下载地址: http://www.mysql.com/downloads/workbench/   2,安装Workbench的依赖组件两个 http ...