Skip to content

ivar66/php-interview

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PHP常见面试问答

通过平时的积累,汇总大家的面试遇到的问题,尝试提供常见问题的解答

包含PHP,数据库,网络,Linux,数据结构等部分


常见知识点

一、PHP篇

二、数据库篇

三、数据结构/算法篇

数据结构

  • 堆、栈特性
  • 队列
  • 哈希表
  • 链表

算法部分

四、网络篇

五、服务器篇

  • 1.查看 CPU、内存、时间、系统版本等信息
  • 2.find 、grep 查找文件
  • 3.awk 处理文本
  • 4.查看命令所在目录
  • 5.自己编译过 PHP 吗?如何打开 readline 功能
  • 6.如何查看 PHP 进程的内存、CPU 占用
  • 7.负载均衡有哪几种,挑一种你熟悉的说明其原理
  • 8.如何保障数据的可用性,即使被删库了也能恢复到分钟级别。你会怎么做。
  • 9.数据库连接过多,超过最大值,如何优化架构。从哪些方便处理?
  • 10.502 大概什么什么原因? 如何排查 504呢?
  • 11.如何排查网站比较慢?
  • 12.supervisor用法详解?
  • 13.用过ping吗?是什么协议?

六、架构篇

七、设计模式

八、安全篇

  • SQL 注入
  • XSS 与 CSRF
  • 输入过滤
  • Cookie 安全
  • 禁用 mysql_ 系函数
  • 数据库存储用户密码时,应该是怎么做才安全
  • 验证码 Session 问题
  • 安全的 Session ID (让即使拦截后,也无法模拟使用)
  • 目录权限安全
  • 包含本地与远程文件
  • 文件上传 PHP 脚本
  • eval 函数执行脚本
  • disable_functions 关闭高危函数
  • FPM 独立用户与组,给每个目录特定权限
  • 了解 Hash 与 Encrypt 区别

其它

  • 如何在不支持 DELETE 请求的浏览器上兼容 DELETE 请求
  • API 请求如何保证数据不被篡改?
  • JSON 和 JSONP 的区别
  • 数据加密和验签的区别
  • RSA 是什么
  • API 版本兼容怎么处理
  • 限流(木桶、令牌桶)
  • OAuth 2 主要用在哪些场景下
  • JWT
  • PHP 中 json_encode(['key'=>123]);return json_encode([]); 区别,会产生什么问题?如何解决
  • 写一个正则如何去匹配纯数字

About

PHP面试常见知识汇总(php/数据库/网络/算法等等)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages