PHP开发知识结构 目录 顺序:基础 => 进阶 => 原理 => 架构 => 业务 => 软技能 开发工具 环境搭建 编程语言 代码质量 PHP 安全 数据库 框架 计算机基础 编程知识储备 架构 运维&统计 微服务 应用 文档规范 开发流程 软技能 附录 开发工具 编辑器和IDE PhpStorm - 讨论 VIM Sublime Text - 使用 VS code Notepad++ 服务器组件 XAMPP* WampServer phpStudy 调试工具 xhprof xdebug Fiddler Chrome Dev Tools SwitchHosts 版本管理 Git/SVN Github/GitLab Sourcetree Mysql Navicat for Mysql PhpMyAdmin Redis redisdesktop Markdown写作 Typora Cmd Markdown 云盘 百度云 坚果云 环境搭建 Linux Nginx Apache Mysql PHP oh-my-zsh 编程语言 前端:CSS/Html/JavaScript/bootstrap LNMP:Linux/Nginx/Apache/Mysql/PHP 前端框架:Vuejs/React/Angular 其他:Golang/Java 代码质量 编码风格 PSR PHP_CodeSniffer Clean Code PHP 单元测试 PHPUnit 自动化测试 PHP PHP基础 语言参考 安全 特点 函数参考 自动加载 命名空间 依赖管理: Composer/Packagist PHP标准库 PHP扩展 PHP内核 安全 CSRF XSS Same-origin policy Web 应用程序安全 密码哈希: 加盐处理/password_hash 数据过滤 配置文件 注册全局变量 错误报告 数据库 基础理论 数据库设计的三大范式 关系型数据库 Mysql SQL基本(SELECT、UPDATE、INSERT、DELETE、JOIN、子查询) MySQL特性(表引擎、字段类型、函数、索引类型) MySQL进阶(Explain查询优化、Profiler、索引优化、processlist管理、备份还原、主从复制) MySQL命令行操作 -使用PHP操作MySQL(PDO、Prepare、Bind) SQLite NoSQL数据库 Memcached Redis MongoDB 框架 Laravel Yii 权威指南 symfony codeigniter Phalcon ThinkPHP Swoole Tars Swoft 计算机基础 编译原理 计算机网络 操作系统 算法原理 计算机组成原理 编程知识储备 数据结构 数组(Array) 堆栈(Stack) 队列(Queue) 链表(Linked List) 树(Tree) 图(Graph) 堆(Heap) 散列表(Hash) OOP/AOP 闭包 编程范型 设计模式 网络编程&并发 多线程 线程安全 一致性、事务 锁 操作系统 计算机原理 CPU 多级缓存 进程 线程 协程 架构 复杂度 高并发 高性能 高可用 中间件 Web Server 缓存 消息队列 定时调度 RPC 数据库中间件 日志系统 配置中心 API网关 分布式/集群 运维&统计 持续集成(CI/CD) 测试 TDD 理论 单元测试 压力测试 全链路压测 A/B、灰度、蓝绿测试 虚拟化 容器技术 微服务 负载均衡 Nginx/LVS 微服务 服务网关 应用 用户 单点登录 权限 权限系统 业务 搜索 Elasticsearch Sphinx Solr 文档规范 文档 设计交付文档 URL接口文档 Postman 数据库文档 API文档 swagger apiDoc phpDoc 规范 HTTP 工具 石墨文档 语雀 GitBook KanCloud 开发流程 编码 测试 部署 监控 软技能 沟通能力 责任感 逻辑思维 金字塔原理 分析问题、解决问题 学习能力 刻意练习 团队合作 执行力 附录 PHP之道 技术网站及博客集锦