「精通 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 个项目。

其他的如在大公司里面工作,接触的项目会比较少,有一些情况下,只是维护一个系统里的小功能,一年下来就一个项目经验。

你不需要去「自己从零开始写一个框架」来学习这些东西,就像 你不需要去学组装汽车,甚至是生产汽车零件来成为老司机一样

 
 

如何理解精通PHP ?的更多相关文章

  1. 《如何阅读it技术书》课堂笔记——51cto

    对一些书的看法: “21天精通JAVA之类”的书,好好理解精通二字,哪里有这么快就能学的会. 吐槽新人: Oop理论,别写出来的都是面向过程式. 桌面乱七八糟. 对新人分享一些经验: 阅读时自我提神的 ...

  2. 从GitHub Jobs! 看技术发展趋势! 程序员进阶必备!

    0. https://jobs.github.com/positions GitHub Jobs: 1. https://jobs.github.com/positions/38bb8dc8-b5b4 ...

  3. 十五天精通WCF——第八天 对“绑定”的最后一点理解

    转眼已经中断10几天没有写博客了,也不是工作太忙,正好碰到了端午节,然后最近看天津台的爱情保卫战入迷了...太好看了,一直都是回味无穷...而且 涂磊老师话说的真是tmd的经典,然后就这样耽搁了,好了 ...

  4. [转]十五天精通WCF——第八天 对“绑定”的最后一点理解

    转眼已经中断10几天没有写博客了,也不是工作太忙,正好碰到了端午节,然后最近看天津台的爱情保卫战入迷了...太好看了,一直都是回味无穷...而且 涂磊老师话说的真是tmd的经典,然后就这样耽搁了,好了 ...

  5. Java精通并发-透过字节码理解synchronized关键字

    在上一次https://www.cnblogs.com/webor2006/p/11428408.html中对于synchronized关键字的作用做了一个实例详解,下面再来看一下这个程序: 请问下, ...

  6. <程序员从入门到精通> -- How

    定位 自己才是职业生涯的管理者,想清楚自己的发展路径: 远期的理想是什么?近期的规划是什么?今日的任务和功课又是什么? 今日之任务或功课哪些有助于近期之规划的实现,而近期之规划是否有利于远期之理想? ...

  7. 精通Perl(第2版)

    精通Perl(第2版)(通往Perl大师之路必读经典书籍,体现了一种编程思维,能够帮你解决很多实际的问题) [美]brian d foy(布瑞恩·D·福瓦)著   王兴宇 刘宸宇 译 ISBN 978 ...

  8. IDDD 实现领域驱动设计-理解领域和子域

    上一篇:<IDDD 实现领域驱动设计-一个简单业务用例的回顾和理解> 在<实现领域驱动设计>第二章的前半部分内容中,提到领域和子域的概念,并且作者把这两者又进行了细致的区分,其 ...

  9. <精通JavaScript>---阅读笔记01

    下面是阅读精通JavaScript书做的相关笔记. JS中的函数重载 函数重载必须依赖两件事情:判断传入参数数量的能力和判断传入参数类型的能力,在js中每个函数都带有一个仅在这个函数范围内作用的变量, ...

随机推荐

  1. C语言 · 明明的随机数

    算法训练 明明的随机数   时间限制:1.0s   内存限制:256.0MB      问题描述 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的 ...

  2. [镜像]loop设备及losetup命令介绍

    最近需要对一个镜像文件进行修改,可以些方式是通过losetup和kpartx, mount完成,于是分享下面这篇 转自:http://blog.csdn.net/ustc_dylan/article/ ...

  3. Java GUI画圆。

    package ydj; import java.awt.*; import javax.swing.*; public class huayuan extends JFrame { public h ...

  4. 轻量级ORM框架Dapper应用三:使用Dapper实现In操作

    IN 操作符允许我们在 WHERE 子句中规定多个值. 本篇文章中,还是使用和上篇文章中同样的实体类和数据库,Dapper使用in操作符的代码如下: using System; using Syste ...

  5. WPF教程三:布局之WrapPanel面板

    WrapPanel:环绕面板 WrapPanel布局面板将各个控件从左至右按照行或列的顺序罗列,当长度或高度不够时就会自动调整进行换行,后续排序按照从上至下或从右至左的顺序进行. Orientatio ...

  6. MongoDB · 引擎特性 · MongoDB索引原理

    MongoDB · 引擎特性 · MongoDB索引原理数据库内核月报原文链接 http://mysql.taobao.org/monthly/2018/09/06/ 为什么需要索引?当你抱怨Mong ...

  7. golang 数组以及slice切片

    老虞学GoLang笔记-数组和切片   数组 Arrays 数组是内置(build-in)类型,是一组同类型数据的集合,它是值类型,通过从0开始的下标索引访问元素值.在初始化后长度是固定的,无法修改其 ...

  8. 什么是服务端渲染、客户端渲染、SPA、预渲染,看完这一篇就够了

    服务端渲染(SSR) 简述:     又称为后端渲染,服务器端在返回html之前,在html特定的区域特定的符号里用数据填充,再给客户端,客户端只负责解析HTML.     鼠标右击点击查看源码时,页 ...

  9. 【转】java基本数据类型vs封装数据类型

    1.基本概念 说java是面向对象的语言是正确的,但是她不纯,基本数据类型就不是对象. 基本数据类型可以大致分为三类:数据型:int.short.long.byte.float.double字符型:c ...

  10. 第三百二十节,Django框架,生成二维码

    第三百二十节,Django框架,生成二维码 用Python来生成二维码,需要qrcode模块,qrcode模块依赖Image 模块,所以首先安装这两个模块 生成二维码保存图片在本地 import qr ...