「精通 PHP」可以理解为以下三个:
- 精通「PHP 解析器
- 精通「PHP 语法、函数(这门语言)
- 精通「PHP 项目开发
1 精通「PHP 解析器」
可以从这里开始学习:
- PHP核心:骇客指南 :http://php.net/manual/zh/internals2.php
- TIPI-深入理解PHP 内核:http://www.php-internals.com/
2 精通「PHP 语法、函数(这门语言)」
多看官方文档:http://www.php.net/manual/zh/
- 为其一年,文档看十遍;
- 看文档的时候连带下面的评论也都一并查看,那些评论价值极高,有代码示例的要运行一遍;
我见过一个 PHP 高手,2011 年那会没有好框架的时候,他用简单的编辑器手写代码,编码速度惊人,键盘敲击声如淘宝客服打字速度,啪啦啪啦啪啦啪啦啦,我问他怎么做到的,他一脸 ( ̄_, ̄ ) 的说:文档看了 8 遍吧,大家不都这样吗?
3 精通「PHP 项目开发」
这一块强调的是比较实战的「应用构建」。接触的更多是软件设计,工作流,随便列几个模块:
- 用户认证
- 用户授权
- 缓存
- 队列
- 计划任务
- 前端样式构建工作流
- 邮件
- 本地化
- 文件存储系统
- 表单验证
- 分页
- 测试
- 数据模型设计
- 错误记录
- 日志管理
- 模板引擎
- 验证码
- 第三方登录
- 数据库优化
- API 那一堆,如 OAuth、版本管理等。。。
- 还有更多产品、业务专属的,如附近的人计算、积分系统等。。。
- 一口气没说完。。。等。。。
这些需要大量的项目经验积累,按「10 个项目」为一个阶段,你会发现每 「10 个项目」你对 PHP 的理解都不一样。
实战项目这个因工作职位而定,外包公司一年勤奋的能接触到几十个项目,之前在外包公司待过,半年处理 13 个项目。
其他的如在大公司里面工作,接触的项目会比较少,有一些情况下,只是维护一个系统里的小功能,一年下来就一个项目经验。
你不需要去「自己从零开始写一个框架」来学习这些东西,就像 你不需要去学组装汽车,甚至是生产汽车零件来成为老司机一样。